十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
final是java中的一個(gè)關(guān)鍵字,可以用來修飾變量、方法和類。用關(guān)鍵詞final修飾的域成為最終域。用關(guān)鍵詞final修飾的變量一旦賦值,就不能改變,也稱為修飾的標(biāo)識為常量。如果一個(gè)類的域被關(guān)鍵字final所修飾,它的取值在程序的整個(gè)執(zhí)行過程中將不會(huì)改變。

成都創(chuàng)新互聯(lián)長期為近千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為連云企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì),連云網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
1、用來修飾一個(gè)引用
如果引用為基本數(shù)據(jù)類型,則該引用為常量,該值無法修改;
如果引用為引用數(shù)據(jù)類型,比如對象、數(shù)組,則該對象、數(shù)組本身可以修改,但指向該對象或數(shù)組的地址的引用不能修改。
如果引用時(shí)類的成員變量,則必須當(dāng)場賦值,否則編譯會(huì)報(bào)錯(cuò)。
例子如下所示:
final class Person {
String name ="zs";
//3. 此處不賦值會(huì)報(bào)錯(cuò)
//final int age;
final int age = 10;
}
public class Demo01 {
public static void main(String[] args) {
//1. 基本數(shù)組類型為常量,無法修改
final int i = 9;
//i = 10;
//2. 地址不能修改,但是對象本身的屬性可以修改
Person p = new Person();
p.name = "lisi";
final int[] arr = {1,2,3,45};
arr[3] = 999;
//arr = new int[]{1,4,56,78};
}
}2、用來修飾一個(gè)方法
當(dāng)使用final修飾方法時(shí),這個(gè)方法將成為最終方法,無法被子類重寫。但是,該方法仍然可以被繼承。
class Person {
public final void say() {
System.out.println("說....");
}
public void eat() {
System.out.println("吃...");
}
}
class Teacher extends Person {
//1. final修飾的方法不能被重寫,但此方法仍然被繼承
/*@Override
public void say() {
System.out.println("老師在一本正經(jīng)的說...");
}*/
public void eat() {
System.out.println("老師在大口大口的吃...");
}
}
public class Demo02 {
public static void main(String[] args) {
Teacher t = new Teacher();
t.say();
}
}3、用來修飾類
當(dāng)用final修改類時(shí),該類成為最終類,無法被繼承。簡稱為“斷子絕孫類”。
/***
* final用法3:修飾類,則該類成為最終類,無法被繼承
* @author Administrator
*
*/
final class Person02 { }
//class Teacher02 extends Person02 { }
//class MyString extends String{}
public class Demo03 {
}以上就是Java中的final是什么意思?的詳細(xì)內(nèi)容,更多請關(guān)注創(chuàng)新互聯(lián)其它相關(guān)文章!