1. 程式人生 > >static、final和static的作用與區別

static、final和static的作用與區別

static修飾符。可以用於修飾一個類的方法、變數,比如下面的www類,static修飾的方法稱為靜態方法,修飾的變數稱為靜態變數,靜態方法和靜態變數就直接屬於類,而不屬於該類的例項。

class  www{

     public static int nn;

     public static void hehe(); 

}

比如,YYY類要呼叫靜態方法和靜態變數,由於靜態是屬於類的,所以直接WWW.nn呼叫靜態變數。

class YYY{

    public int  kk=WWW.nn;

}  

final修飾符。用於修飾一個類、方法和變數,修飾的類,那麼這個類就不能被繼承;修飾的方法,那麼這個方法就不能被子類重寫;修飾的變數,那麼這個變數就成了常量,只能被初始化一次,也就是隻能被賦值一次,如果有第二次賦值,就會報錯。

class FFF{

    public final int  hhh; //hhh變數就成了常量

}

static靜態塊。靜態塊是一個包含程式碼的範圍,這個範圍的程式碼只被執行一次,那什麼時候執行呢? 當類程式碼被載入到記憶體的時候,執行一次,之後不再執行。

static{ 程式碼 }