final關鍵字:
final是最終的意思。可以修飾類、方法、變量。
修飾類:該類就被稱為最終類,特點是不能被繼承了。
修飾方法:該方法是最終方法,特點是不能被重寫了。
修飾變量:該變量只能被賦值一次。
有些工具類被設計成final類,不想讓別人繼承,只提供方法給別人使用。
例如:pi就是不想讓別人再次對他進行賦值。
常量:public static final 修飾的成員變量,建議名稱全部大寫,多個單詞下劃線連接。
一般情況下,我們不使用final修飾實例變量。
final修飾變量的注意事項:
final修飾基本類型的變量,變量存儲的數據不能被改變。
final修飾引用類型的變量,變量存儲的地址不能被改變,但地址所指向對象的內容是可以被改變的。
數組,改數據是可以的,但是改數組的地址就不報錯了。
補充知識:常量
使用了static final修飾的成員變量就稱為常量。
作用:通常用于記錄系統的常量信息。
package cn.ensource.d3_final;public class Test2 {private static final String SCHOOL_NAME = "黑馬程序員";public static void main(String[] args) {// 目標:認識常量System.out.println(SCHOOL_NAME);System.out.println(SCHOOL_NAME);System.out.println(SCHOOL_NAME);System.out.println(SCHOOL_NAME);}
}
維護性比較好。
編譯:宏替換。
好維護,性能不受影響。