歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Java之final修飾符

Java之final修飾符

日期:2017/3/1 9:28:09   编辑:Linux編程

final修飾的變量不可以改變,一旦獲得初始值,該final變量的值就不能被重新賦值。

1.final成員變量(必需由程序員顯式地指定初始值)

類變量:必須在靜態初始化塊中或者聲明該變量時指定初始值,二者選一

實例變量:必須在非靜態初始化塊,或聲明該變量,或構造器中指定初始值

2.final局部變量

final定義的局部變量可以在定義的時候指定默認值,也可以不指定默認值。如果在定義的時候沒有指定默認值,則在以後的代碼中可以指定默認值,但只能指定一次。

3.final修飾基本類型變量和引用類型變量的區別

當final修飾基本類型變量時,不能對基本類型對象變量重新賦值。但當final修飾引用類型變量時,它保存的僅僅是一個引用,final只是保證這個應用類型變量的引用地址不變,即一直引用同一個對象,但這個對象完全可以發生改變。

public class Test()
{
public static void main(String[] args)
{
//final修飾數組變量,是一個引用變量
final int[] iArr = {5,6,7,8};
//輸出5 6 7 8
System.out.println(Arrays.toString(iArr));
//對數組元素進行賦值,合法
iArr[2] = -8 ;
//輸出5 -8 7 8
System.out.println(Arrays.toString(iArr));
}
}

4.final方法
final修飾的方法不可被重寫

5.final類

final修飾的類不可以有子類,不可被繼承

Copyright © Linux教程網 All Rights Reserved