1、基本用法
可以修飾類、方法、變量(成員變量和局部變量)。
2、類
表示此類不能被繼承(String.class)。
3、方法
1.可以把方法鎖住,防止任何繼承類修改它的含義。
2.同意編譯器將針對該方法的所以調用都轉換爲內嵌調用。
3.所有private方法隱式地指爲final。
4、引用類型
表示引用的地址是不能改變的。
5、基本數據類型
對於基本數據類型final使數值恆定不變。
6、示例代碼
public class Final {
private final int AttRIBUTE_A = 0;
private final String ATTRIBUTR_B = "final";
/**
* static + final 表示只佔據一段不能改變的存儲空間。
*/
private static final String ATTRIBUTE_C = "staticFinal";
public final void Method() {
System.out.println("final Method");
}
final class Class {
}
public static void main(String[] args) {
/**
* 參數列表中聲明final,意味着無法在方法中更改參數引用所指向的對象。(主要用來向匿名內部類傳遞數據)
*/
final String attributeC = "匿名內部類";
new Thread(new Runnable() {
public void run() {
System.out.println(attributeC);
}
}).start();
}
}