最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java面向?qū)ο笾甪inal關(guān)鍵字詳細(xì)解讀

 更新時(shí)間:2024年01月12日 09:30:01   作者:咕咕貓_  
這篇文章主要介紹了Java面向?qū)ο笾甪inal關(guān)鍵字詳細(xì)解讀,final修飾的屬性又叫常量,一般用 XX_XX_XX來(lái)命名,final修飾的屬性在定義時(shí)必須賦初始值,并且以后不能再修改,需要的朋友可以參考下

一、基本介紹

final可以修飾類、屬性、方法

有以下需求可使用final:

①當(dāng)不希望類被繼承的時(shí)候,可以用final修飾

②當(dāng)不希望父類的某個(gè)方法被子類重寫時(shí),可以用final修飾

③當(dāng)不希望類的某個(gè)屬性的值被修改時(shí),可以使用final修飾

④當(dāng)不希望某個(gè)局部變量屬性被修改時(shí),可以使用final修飾

二、final使用注意事項(xiàng)和細(xì)節(jié)

1.final修飾的屬性又叫常量,一般用 XX_XX_XX來(lái)命名

2.final修飾的屬性在定義時(shí)必須賦初始值,并且以后不能再修改,賦值可以在以下位置之一:

①在定義時(shí)直接賦值

②在構(gòu)造器中

③在代碼塊中

3.如果final修飾的屬性是靜態(tài)的,則初始化的位置只能是:①在定義時(shí)直接賦值 ②在靜態(tài)代碼塊中,不能在構(gòu)造器中賦值

4.final類不能繼承,但是可以實(shí)例化對(duì)象

5.如果類不是final類,但是含有final方法,則該方法不能被重寫,但是可以被繼承

6.一般來(lái)說(shuō),如果一個(gè)類已經(jīng)是final類了,就沒有必要再將方法修飾成final方法

7.final 和 static 往往搭配使用,效率更高,搭配使用不會(huì)導(dǎo)致類加載,底層編譯器做了優(yōu)化處理

8.包裝類(Integer,Double,F(xiàn)loat,Boolean等都是final),String也是final

示例

public class FinalDetail01 {
    public static void main(String[] args) {
        CC cc = new CC();
        new EE().cal();
    }
}
class AA{
    /*
    1. 在定義時(shí)直接賦值
    2. 在構(gòu)造器中
    3. 在代碼塊中
     */
    public final double TAX_RATE1 = 0.08; //在定義時(shí)直接賦值
    public final double TAX_RATE2;
    public final double TAX_RATE3;
    public AA() { //在構(gòu)造器中賦值
        TAX_RATE2 = 1.1;
    }
    { //在代碼塊中賦值
        TAX_RATE3 = 8.8;
    }
}
class BB {
    /*
    如果final修飾的屬性是靜態(tài)的,則初始化的位置只能是
    1.在定義時(shí)     2.在靜態(tài)代碼塊中   不能再構(gòu)造器中賦值
     */
    public static final double TAX_RATE1 = 99.9;
    public static final double TAX_RATE2;
    static {
        TAX_RATE2 = 88.8;
    }
}
//final類不能繼承,但是可以實(shí)例化對(duì)象
final class CC { }
//如果類不是final類,但是含有final類方法,則該方法不能重寫,但是可以被繼承
//即仍然遵守繼承機(jī)制
class DD {
    public final void cal(){
        System.out.println("cal() 方法...");
    }
}
class EE extends DD{
}
public class FinalDetail02 {
    public static void main(String[] args) {
        System.out.println(BBB.num);
        //包裝類,String,是final類,不能被繼承
        //Double
    }
}
final class AAA {
    //一般來(lái)說(shuō),如果一個(gè)類已經(jīng)是final類了,就沒必要再將方法修飾成final方法
    //public final static void cry(){ }
}
//final 和 static 往往搭配使用,效率更高
class BBB{
    public final static int num = 1000;
    static {
        System.out.println("BBB靜態(tài)代碼塊被執(zhí)行");
    }
}

到此這篇關(guān)于Java面向?qū)ο笾甪inal關(guān)鍵字詳細(xì)解讀的文章就介紹到這了,更多相關(guān)Java的final關(guān)鍵字內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 提升網(wǎng)絡(luò)請(qǐng)求穩(wěn)定性HttpClient的重試機(jī)制深入理解

    提升網(wǎng)絡(luò)請(qǐng)求穩(wěn)定性HttpClient的重試機(jī)制深入理解

    這篇文章主要為大家介紹了提升網(wǎng)絡(luò)請(qǐng)求穩(wěn)定性HttpClient的重試機(jī)制深入理解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • java單例模式學(xué)習(xí)示例

    java單例模式學(xué)習(xí)示例

    java中單例模式是一種常見的設(shè)計(jì)模式,單例模式分三種:懶漢式單例、餓漢式單例、登記式單例三種,下面提供了單例模式的示例
    2014-01-01
  • 如何避免Apache?Beanutils屬性copy

    如何避免Apache?Beanutils屬性copy

    這篇文章主要為大家介紹了如何避免Apache?Beanutils屬性copy的分析詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • SpringMVC請(qǐng)求參數(shù)別名設(shè)置方式

    SpringMVC請(qǐng)求參數(shù)別名設(shè)置方式

    文章介紹了SpringMVC中請(qǐng)求參數(shù)的別名設(shè)置方法,通常,接收參數(shù)時(shí)要求參數(shù)名一致,通過(guò)@RequestParam注解的value屬性,可以為參數(shù)設(shè)置別名,實(shí)現(xiàn)參數(shù)名不一致時(shí)的準(zhǔn)確接收
    2025-10-10
  • IDEA快速搭建jsp項(xiàng)目的圖文教程

    IDEA快速搭建jsp項(xiàng)目的圖文教程

    這篇文章主要介紹了IDEA快速搭建jsp項(xiàng)目的圖文教程,本文分步驟通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-05-05
  • Java獲取當(dāng)前時(shí)間的時(shí)間戳(13位和10位)

    Java獲取當(dāng)前時(shí)間的時(shí)間戳(13位和10位)

    本文主要介紹了Java獲取當(dāng)前時(shí)間的時(shí)間戳(13位和10位),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • SpringBoot之ApplicationRunner解析(spring容器啟動(dòng)完成執(zhí)行的類)

    SpringBoot之ApplicationRunner解析(spring容器啟動(dòng)完成執(zhí)行的類)

    這篇文章主要介紹了SpringBoot之ApplicationRunner解析(spring容器啟動(dòng)完成執(zhí)行的類),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Spring Boot自動(dòng)注入的原理分析

    Spring Boot自動(dòng)注入的原理分析

    這篇文章主要給大家分析介紹了關(guān)于Spring Boot自動(dòng)注入的原理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用Spring Boot自具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 解決tomcat啟動(dòng)時(shí)報(bào)Junit相關(guān)錯(cuò)誤java.lang.ClassNotFoundException: org.junit.Test問(wèn)題

    解決tomcat啟動(dòng)時(shí)報(bào)Junit相關(guān)錯(cuò)誤java.lang.ClassNotFoundException: 

    這篇文章主要介紹了解決tomcat啟動(dòng)時(shí)報(bào)Junit相關(guān)錯(cuò)誤java.lang.ClassNotFoundException: org.junit.Test問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-05-05
  • Springboot源碼 AbstractAdvisorAutoProxyCreator解析

    Springboot源碼 AbstractAdvisorAutoProxyCreator解析

    這篇文章主要介紹了Springboot源碼 AbstractAdvisorAutoProxyCreator解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08

最新評(píng)論

会东县| 长顺县| 汕头市| 周宁县| 姜堰市| 延川县| 益阳市| 乐业县| 阜南县| 镇原县| 荥阳市| 临汾市| 溆浦县| 巴青县| 峡江县| 岳池县| 宝山区| 东莞市| 牙克石市| 邓州市| 浦北县| 左贡县| 通河县| 石首市| 长寿区| 云龙县| 东乌珠穆沁旗| 北海市| 全州县| 会同县| 电白县| 栾城县| 屯门区| 余姚市| 柏乡县| 双柏县| 盈江县| 茶陵县| 开江县| 靖安县| 苗栗县|