static
1.在類別中,用static修飾的屬性,稱為靜態屬性。為這個類別的所有物件所共有,存放在靜態儲存區,所有該類別的物件都可以存取且存取的都是同一變數。可以用作計數器,來統計總共創建了多少個各類別的物件。
2.在類別中,用static 修飾的方法為靜態方法,在靜態方法中不可以存取非靜態的屬性和方法,但在非靜態方法中可以存取靜態方法和屬性;且static方法多態失效,不能使用this。
3.由於靜態屬性和方法是屬於該類別的所有物件的,所以可以用類別名稱.靜態屬性/方法名稱---來存取。
4.static 還可以修飾程式碼區塊,在類別載入的時候被執行1次,僅且一次。
final
(1)final標記的類別不能被繼承
class TT extends T{}//出錯,final類別不能被繼承
public final void function(){}
}
class TT extends T{
public void function(){}//出錯,final方法不能被子類別重寫
}
如:
}
//或者
class Test{
final int x;
Test(){
x=10;
}
(6)將一個形參定義成final也是可以的,這就限制了在方法中修改形參的值範圍。
java中有許多的類別為final類型:String ,Math等等。