那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Java中對 final 關(guān)鍵詞的介紹

科技綠洲 ? 來源:Java技術(shù)指北 ? 作者:Java技術(shù)指北 ? 2023-10-10 17:07 ? 次閱讀

1、修飾變量

稍微有點Java基礎(chǔ)的都知道用final關(guān)鍵字修飾的變量稱為常量,常量的意思是不可更改。變量為基本數(shù)據(jù)類型,不可更改很容易理解,那么對于引用類型呢?不可能改的是其引用地址,還是對象的內(nèi)容?

我們首先構(gòu)造一個實體類:Person

package com.ys.bean;

/**
 * Create by YSOcean
 */
public class Person {
    private  String name;

    public Person(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

接著根據(jù)創(chuàng)建一個 Person 對象:

圖片
可以看到,首先通過 final 關(guān)鍵字修飾一個對象 p,然后接著將 p 對象指向另一個新的對象,發(fā)現(xiàn)報錯,也就是說final修飾的引用類型是不能改變其引用地址的。

接著我們改動 p 對象的 name 屬性:

圖片
發(fā)現(xiàn)程序沒有報錯。

結(jié)論:被 final 修飾的變量不可更改其引用地址,但是可以更改其內(nèi)部屬性。

2、修飾方法

final 關(guān)鍵字修飾的方法不可被覆蓋。

在《Java編程思想》第 4 版 7.8.2 章節(jié) final 方法p176 頁這樣描述:使用 final 方法原因有兩個:

①、第一個原因是把方法鎖定,以防止任何繼承類修改它的含義,這是出于設(shè)計的考慮:想要確保在繼承中使方法的行為保持不變,并且不會被覆蓋。

②、第二個原因是效率,在 Java 的早期實現(xiàn)中,如果將一個方法聲明為 final,就是同意編譯器將針對該方法的所有調(diào)用都轉(zhuǎn)為內(nèi)嵌調(diào)用,內(nèi)嵌調(diào)用能夠提高方法調(diào)用效率,但是如果方法很大,內(nèi)嵌調(diào)用不會提高性能。而在目前的Java版本中(JDK1.5以后),虛擬機可以自動進行優(yōu)化了,而不需要使用 final 方法。

所以final 關(guān)鍵字只有明確禁止覆蓋方法時,才使用其修飾方法。

PS:《Java編程思想》中指出類中所有的 private 方法都隱式指定為 final 的,所以對于 private 方法,我們顯式的聲明 final 并沒有什么效果。但是我們創(chuàng)建一個父類,并在父類中聲明一個 private 方法,其子類中是能夠重寫其父類的private 方法的,這是為什么呢?

父類:Parent.class

package com.ys.bean;
/**
 * Create by YSOcean
 */
public class Parent {
    private void say(){
        System.out.println("parent");
    }
}

子類:Son.class

package com.ys.bean;
/**
 * Create by YSOcean
 */
public class Son extends Parent {

    private void say(){
        System.out.println("son");
    }

}

其實仔細(xì)看看,這種寫法是方法的覆蓋嗎?我們通過多態(tài)的形式并不能調(diào)用到父類的 say() 方法:

圖片
并且,如果我們在子類的 say() 方法中,添加 @Override 注解也是會報錯的。

圖片
所以這種形式并不算方法的覆蓋。

3、修飾類

final 修飾類表示該類不可被繼承。

也就是說不希望某個類有子類的時候,用final 關(guān)鍵字來修飾。并且由于是用 final 修飾的類,其類中所有的方法也被隱式的指為 final 方法。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • JAVA
    +關(guān)注

    關(guān)注

    19

    文章

    2975

    瀏覽量

    105149
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1642

    瀏覽量

    49286
  • 數(shù)據(jù)類型
    +關(guān)注

    關(guān)注

    0

    文章

    236

    瀏覽量

    13663
  • final
    +關(guān)注

    關(guān)注

    0

    文章

    5

    瀏覽量

    2621
收藏 人收藏

    評論

    相關(guān)推薦

    [討論]提高網(wǎng)站關(guān)鍵詞排名的28個SEO小技巧

    ) 內(nèi)容自然出現(xiàn)關(guān)鍵詞 內(nèi)容第一段和最后一段出現(xiàn)關(guān)鍵詞 H1,H2標(biāo)簽中出現(xiàn)關(guān)鍵詞 導(dǎo)出鏈接錨文本包含
    發(fā)表于 12-01 17:08

    TF-IDF測量文章的關(guān)鍵詞相關(guān)性研究

    停用詞的移除、大小寫字母轉(zhuǎn)化和詞干提取。4)獲取查詢。獲取單詞權(quán)重,對于可疑文檔利用TF-IDF獲得關(guān)鍵詞,并排序得到相應(yīng)的關(guān)鍵詞列表。排在前n個的關(guān)鍵詞組成一個查詢,以此類推,本試驗
    發(fā)表于 01-26 10:38

    亞馬遜代運營 amazon Search term 關(guān)鍵詞填寫的“神技”

    關(guān)鍵詞稍作調(diào)整,以及篩選出的關(guān)鍵詞在搜索結(jié)果的排名做出決定,是否應(yīng)該放在 search term ;3.放一些與自己產(chǎn)品相關(guān)的長尾
    發(fā)表于 06-05 15:41

    HanLP關(guān)鍵詞提取算法分析詳解

    l 參考論文:《TextRank: Bringing Order into Texts》l TextRank算法提取關(guān)鍵詞Java實現(xiàn)l TextRank算法自動摘要的Java實現(xiàn)這篇文章
    發(fā)表于 11-05 10:41

    關(guān)鍵詞優(yōu)化有哪些實用的方法

    的排名。還有一些實用的方法就是網(wǎng)站的一個關(guān)鍵詞布局,這里應(yīng)該設(shè)計seo算法的頁面相關(guān)匹配程度,這樣來提升網(wǎng)站頁面的整體相關(guān)性,其次是重要的位置部署好我們要做的關(guān)鍵詞,比如重要的一些標(biāo)簽來添加我們做
    發(fā)表于 08-11 01:19

    百度關(guān)鍵詞排名掉完了怎么辦

    一夜之間關(guān)鍵詞排名掉完了,沒有被K,也沒有出現(xiàn)違規(guī)操作,這是怎么回事呢?
    發(fā)表于 01-27 11:01

    #2023,你的 FPGA 年度關(guān)鍵詞是什么? #

    FPGA 年度關(guān)鍵詞,我的想法是“標(biāo)準(zhǔn)化”;今年的工作遇到了不少同事的issues,本身都是小問題或者很細(xì)節(jié)的東西但是卻反復(fù)出現(xiàn)問題,目前想到的最好的辦法是做好設(shè)計規(guī)則的標(biāo)準(zhǔn)化才能避免,不知道大家有沒有更好的建議?
    發(fā)表于 12-06 20:31

    2009年國照明行業(yè)十大關(guān)鍵詞

    2009年國照明行業(yè)十大關(guān)鍵詞   一、節(jié)能推廣   關(guān)鍵詞:節(jié)能推廣   事
    發(fā)表于 12-15 10:24 ?648次閱讀

    基于強度熵解決中文關(guān)鍵詞識別

    文本的關(guān)鍵詞識別是文本挖掘的基本問題之一。在研究現(xiàn)有基于復(fù)雜網(wǎng)絡(luò)的關(guān)鍵詞識別方法的基礎(chǔ)上,從整個復(fù)雜網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)特征的信息缺失角度來考察各節(jié)點的重要程度。提出強度熵測度來量化評估各節(jié)點重要程度,用于解決中文
    發(fā)表于 11-24 09:54 ?7次下載
    基于強度熵解決中文<b class='flag-5'>關(guān)鍵詞</b>識別

    java final關(guān)鍵字用法技巧匯總解析

    談到final關(guān)鍵字,想必很多人都不陌生,在使用匿名內(nèi)部類的時候可能會經(jīng)常用到final關(guān)鍵字。另外,Java
    發(fā)表于 12-01 11:02 ?1137次閱讀
    <b class='flag-5'>java</b> <b class='flag-5'>final</b><b class='flag-5'>關(guān)鍵</b>字用法技巧匯總解析

    基于關(guān)鍵詞的最優(yōu)路徑查詢算法

    為改進基于關(guān)鍵詞的最優(yōu)路徑查詢算法,在大規(guī)模圖以及多查詢關(guān)鍵詞下復(fù)雜度過高與可擴展性不足的缺陷,依據(jù)查詢關(guān)鍵詞序列構(gòu)建候選路徑的策略提出一種高效查詢算法。該算法在路徑構(gòu)建過程優(yōu)先滿足
    發(fā)表于 12-06 11:28 ?0次下載

    基于詞頻統(tǒng)計的關(guān)鍵詞提取方法

    ,通過詞語逆頻率TF-IWF算法,按權(quán)值排序得到關(guān)鍵詞。這種改進算法解決了傳統(tǒng)中文關(guān)鍵詞提取方法對相似度高的的不重視而導(dǎo)致關(guān)鍵詞提取精度
    發(fā)表于 12-15 15:29 ?13次下載
    基于詞頻統(tǒng)計的<b class='flag-5'>關(guān)鍵詞</b>提取方法

    基于自動關(guān)鍵詞抽取方法

    自動關(guān)鍵詞抽取是從文本或文本集合自動抽取主題性或重要性的或短語,是文本檢索、文本摘要等許多文本挖掘任務(wù)的基礎(chǔ)性和必要性的工作.探討了關(guān)鍵詞和自動
    發(fā)表于 12-26 16:47 ?2次下載
    基于自動<b class='flag-5'>關(guān)鍵詞</b>抽取方法

    融合BERT向量與TextRank的關(guān)鍵詞抽取方法

    Textrank轉(zhuǎn)移概率矩陣計算過程,同時通過迭代運算對文檔的詞語進行綜合影響力得分排序,最終提取得分最高的TopN個詞語作為關(guān)鍵詞。實驗結(jié)果表明,當(dāng)選取Top3、Top5、Top7和Topl0個關(guān)鍵詞時,與基于
    發(fā)表于 03-21 09:55 ?18次下載
    融合BERT<b class='flag-5'>詞</b>向量與TextRank的<b class='flag-5'>關(guān)鍵詞</b>抽取方法

    Java對static關(guān)鍵詞介紹

    static 是Java的一個關(guān)鍵字,可以用來修飾成員變量、修飾成員方法、構(gòu)造靜態(tài)代碼塊、實現(xiàn)靜態(tài)導(dǎo)包以及實現(xiàn)靜態(tài)內(nèi)部類,下面我們來分別介紹。 1、修飾成員變量 用 static 修飾成員變量
    的頭像 發(fā)表于 10-11 15:26 ?526次閱讀
    <b class='flag-5'>Java</b><b class='flag-5'>中</b>對static<b class='flag-5'>關(guān)鍵詞</b>的<b class='flag-5'>介紹</b>
    鲨鱼百家乐官网游戏平台| 英伦国际| 百家乐官网起步多少| 百家乐官网单机版的| 真百家乐官网游戏| 澳门百家乐大揭密| 大发888娱乐场 888| 百家乐官网视频游戏客服| 太阳百家乐官网破解| 网络百家乐打揽| 现金投注网| 百家乐官网庄闲偏差有多大| 百家乐博之道娱乐城| bet365注册哪家好| 百家乐官网游戏下裁| 澳门百家乐怎么| 云鼎娱乐城优惠活动| 蓝盾百家乐官网打法| 网络百家乐软件真假| 易发棋牌官网| 百家乐官网园游戏77sonci...| 澳门百家乐怎么| 乐众国际| 百家乐官网百家乐官网伴侣 | 澳门百家乐图形| 蒙特卡罗国际网址| 百家乐官网五湖四海赌场娱乐网规则 | 百家乐官网龙虎台布| 百家乐乐翻天| 深州市| 百家乐视频多开器| 澳门顶级赌场网址| 百家乐官网娱乐平台开户| 澳门百家乐规| 澳门百家乐官网大家乐眼| 广东百家乐主论坛| 百家乐官网试玩网站| 百家乐珠仔路| 广南县| 真人百家乐平台下载| 永安市|