Java-用final修飾方法參數

在方法參數前面加final關鍵字就是爲了防止數據在方法體中被修改。這裏主要分兩種情況:第一,用final修飾基本數據類型;第二,用final修飾引用類型。
第一種情況,修飾基本類型(非引用類型)。這時參數的值在方法體內是不能被修改的,即不能被重新賦值。否則編譯就通不過。例如:

public void testInt(final int param1){ 
param1=100; 
} 
在方法體內修改了基本數據類型變量的值,在Eclipse中則會提示:“
 The final local variable param1 cannot be assigned. It must be blank and not using a compound assignment.
第二種情況,修飾引用類型。這時參數變量所引用的對象是不能被改變的。作爲引用的拷貝,參數在方法體裏面不能再引用新的對象。否則編譯通不過。例如:
public void testFinal2(final Object param2){ 
param2=newObject(); 
} 
在方法體內修改了參數的引用,在Eclipse中則會提示:“

 The final local variable param2 cannot be assigned. It must be blank and not using a compound assignment.“

在調用該方法時,形參一旦被實參賦值,就不能改變其值了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章