欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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)說,如果一個(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)說,如果一個(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)文章

  • java.net.http.HttpClient使用示例解析

    java.net.http.HttpClient使用示例解析

    這篇文章主要為大家介紹了java.net.http.HttpClient使用示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • Java字符串處理全解析(String、StringBuilder與StringBuffer)

    Java字符串處理全解析(String、StringBuilder與StringBuffer)

    這篇文章主要介紹了Java字符串處理全解析(String、StringBuilder與StringBuffer),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2025-04-04
  • 一文帶你學(xué)會(huì)Java中ScheduledThreadPoolExecutor使用

    一文帶你學(xué)會(huì)Java中ScheduledThreadPoolExecutor使用

    ScheduledThreadPoolExecutor是Java并發(fā)包中的一個(gè)類,同時(shí)也是?ThreadPoolExecutor的一個(gè)子類,本文主要為大家介紹一下ScheduledThreadPoolExecutor使用,需要的可以參考下
    2024-12-12
  • Spring Boot 整合mybatis 與 swagger2

    Spring Boot 整合mybatis 與 swagger2

    之前使用springMVC+spring+mybatis,總是被一些繁瑣的xml配置,還經(jīng)常出錯(cuò),下面把以前的一些ssm項(xiàng)目改成了spring boot + mybatis,相對(duì)于來(lái)說優(yōu)點(diǎn)太明顯了,具體內(nèi)容詳情大家通過本文學(xué)習(xí)吧
    2017-08-08
  • response.sendRedirect()實(shí)現(xiàn)重定向(頁(yè)面跳轉(zhuǎn))

    response.sendRedirect()實(shí)現(xiàn)重定向(頁(yè)面跳轉(zhuǎn))

    在Java web開發(fā)中,使用response.sendRedirect()可實(shí)現(xiàn)重定向功能。本文將介紹如何使用該方法進(jìn)行頁(yè)面跳轉(zhuǎn),以及該方法的使用場(chǎng)景和注意事項(xiàng),感興趣的可以了解一下
    2023-04-04
  • SparkSQL快速入門教程

    SparkSQL快速入門教程

    Spark?SQL是Spark用于結(jié)構(gòu)化數(shù)據(jù)(structured?data)處理的Spark模塊,今天通過本文給大家介紹SparkSQL快速入門教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2022-02-02
  • java中的?HashMap?的加載因子是0.75原理探討

    java中的?HashMap?的加載因子是0.75原理探討

    在Java中,HashMap是一種常用的數(shù)據(jù)結(jié)構(gòu),用于存儲(chǔ)鍵值對(duì),它的設(shè)計(jì)目標(biāo)是提供高效的插入、查找和刪除操作,在HashMap的實(shí)現(xiàn)中,加載因子(Load?Factor)是一個(gè)重要的概念,本文將探討為什么Java中的HashMap的加載因子被設(shè)置為0.75
    2023-10-10
  • Spring發(fā)送郵件如何內(nèi)嵌圖片增加附件

    Spring發(fā)送郵件如何內(nèi)嵌圖片增加附件

    這篇文章主要介紹了Spring發(fā)送郵件如何內(nèi)嵌圖片增加附件,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • JDBC+GUI實(shí)現(xiàn)簡(jiǎn)單學(xué)生管理系統(tǒng)

    JDBC+GUI實(shí)現(xiàn)簡(jiǎn)單學(xué)生管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了JDBC+GUI實(shí)現(xiàn)簡(jiǎn)單學(xué)生管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • 如何使用Spring?integration在Springboot中集成Mqtt詳解

    如何使用Spring?integration在Springboot中集成Mqtt詳解

    MQTT是多個(gè)客戶端通過一個(gè)中央服務(wù)器傳遞信息的多對(duì)多協(xié)議,能高效地將信息分發(fā)給一個(gè)或多個(gè)訂閱者,下面這篇文章主要給大家介紹了關(guān)于如何使用Spring?integration在Springboot中集成Mqtt的相關(guān)資料,需要的朋友可以參考下
    2023-02-02

最新評(píng)論