final在JAVA中,標識一個對象,不可改變。
解釋如下:
1、如果此對象指向一個常量:
例如:final int a = 100;那么a的值永遠是100。
后續如果重新賦值,將會報編譯錯誤:a = 200;
2、如果此對象指向一個變量:
例如:final User admin = new User("administrator");那么代表admin這個對象引用不可改變。但是卻可以改變他的屬性值。
以下語句編譯正確:
admin.setName("admin");
以下語句編譯錯誤:
admin = new User("zhangsan");