Java基礎(chǔ)編程中final關(guān)鍵詞的作用

Java基礎(chǔ)編程中final關(guān)鍵詞的作用

長(zhǎng)沙達(dá)內(nèi)教育      2022-03-18 14:10:01     10

Java基礎(chǔ)編程中final關(guān)鍵詞的作用,一、final關(guān)鍵字的功能概述final關(guān)鍵字可以用來修飾引用、方法和類。1、用來修飾一個(gè)引用如果引用為基本數(shù)據(jù)類型,則該引用為常

課程價(jià)格 請(qǐng)咨詢

上課時(shí)段: 授課校區(qū):

詳細(xì)介紹

一、final關(guān)鍵字的功能概述

final關(guān)鍵字可以用來修飾引用、方法和類。

1、用來修飾一個(gè)引用

如果引用為基本數(shù)據(jù)類型,則該引用為常量,該值無法修改;

如果引用為引用數(shù)據(jù)類型,比如對(duì)象、數(shù)組,則該對(duì)象、數(shù)組本身可以修改,但指向該對(duì)象或數(shù)組的地址的引用不能修改。

如果引用時(shí)類的成員變量,則必須當(dāng)場(chǎ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.?地址不能修改,但是對(duì)象本身的屬性可以修改????????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修飾的方法不能被重寫,但此方法仍然被繼承????????????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í),該類成為最終類,無法被繼承。簡(jiǎn)稱為“斷子絕孫類”。

final?class?Person02?{????}//class?Teacher02?extends?Person02?{?}//class?MyString?extends?String{}public?class?Demo03?{}

以上就是長(zhǎng)沙達(dá)內(nèi)教育java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java基礎(chǔ)編程中final關(guān)鍵詞的作用”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。

培訓(xùn)啦提醒您:交易時(shí)請(qǐng)核實(shí)對(duì)方資質(zhì),對(duì)于過大宣傳或承諾需謹(jǐn)慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險(xiǎn),謹(jǐn)防上當(dāng)。