歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Java之final修飾符

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