溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Final關(guān)鍵字

發(fā)布時間:2020-08-18 18:11:33 來源:網(wǎng)絡(luò) 閱讀:468 作者:Undertaker16 欄目:開發(fā)技術(shù)

Final關(guān)鍵字

final關(guān)鍵字
final關(guān)鍵字可用于修飾類,變量和方法,它有“這是無法改變的”或者“最終”的含義,因此被final修飾的類、變量和方法將具有以下特性:

final修飾的類不能被繼承

final修飾的方法不能子類重寫

final修飾的變量(成員變量和局部變量)是常量,只能賦值一次

 

final關(guān)鍵字修飾類

Java中的類被final關(guān)鍵字修飾后,該類將不可以被繼承,也就是不能夠派生子類:
final class Animal{ 方法體為空}
class Dog extends Animal{ 方法體為空 }
class Example06{
public static void main(String [] args){
Dog dog=new Dog();
}
}
以上代碼,編譯時報錯,由此可見,被final關(guān)鍵字修飾的類為最終類,不能被其他類繼承。

final關(guān)鍵字修飾方法

當(dāng)一個類的方法被final關(guān)鍵字修飾后,這個類的子類將不能重寫該方法:
class Animal{  
public final void shout(){}
}
class Dog extends Animal{
//重寫父類的shout()方法
public void shout(){}
}
class Demo{
public static void main(String [] args){
  Dog dog=new Dog();
}
}
編譯時報錯,當(dāng)父類的方法不希望被子類重寫時,就可以使用final關(guān)鍵字修飾該

 

final關(guān)鍵字修飾變量

Java中被final修飾的變量為常量,它只能被賦值一次,也就是說final修飾的變量一旦賦值,就不能被改變,如果再次對該變量進行賦值,則程序會在編譯時報錯:
final int num=0;
num=1;  //報錯

final關(guān)鍵字修飾成員變量是,虛擬機不會對其進行初始化,因此使用final修飾成員變量時,需要在定義變量的同時賦予一個初始值。
final String name; //報錯

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI