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

Java中super和this關(guān)鍵字詳解

 更新時間:2022年06月14日 10:17:56   作者:??共飲一杯無????  
這篇文章主要介紹了Java中super和this關(guān)鍵字詳解,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下

父類空間優(yōu)先于子類對象產(chǎn)生

在每次創(chuàng)建子類對象時,先初始化父類空間,再創(chuàng)建其子類對象本身。目的在于子類對象中包含了其對應(yīng)的父類空間,便可以包含其父類的成員,如果父類成員非private修飾,則子類可以隨意使用父類成員。代碼體現(xiàn)在子類的構(gòu)造方法調(diào)用時,一定先調(diào)用父類的構(gòu)造方法。

理解圖解如下: 

super和this的含義

super :代表父類的存儲空間標識(可以理解為父親的引用)。 this :代表當(dāng)前對象的引用(誰調(diào)用就代表誰)。

super和this的用法

訪問成員:

this.成員變量 ‐‐ 本類的 super.成員變量 ‐‐ 父類的 this.成員方法名() ‐‐ 本類的 super.成員方法名() ‐‐ 父類的

用法演示,代碼如下:

class Animal {
    public void eat() {
        System.out.println("animal : eat");
    }
}
class Cat extends Animal {
    public void eat() {
        System.out.println("cat : eat");
    }
    public void eatTest() {
        this.eat(); // this 調(diào)用本類的方法
        super.eat(); // super 調(diào)用父類的方法
    }
}
public class ExtendsDemo08 {
    public static void main(String[] args) {
        Animal a = new Animal();
        a.eat();
        Cat c = new Cat();
        c.eatTest();
    }
}

輸出結(jié)果為:

animal : eat
cat : eat
animal : eat

訪問構(gòu)造方法:

this(...) ‐‐ 本類的構(gòu)造方法 super(...) ‐‐ 父類的構(gòu)造方法

子類的每個構(gòu)造方法中均有默認的super(),調(diào)用父類的空參構(gòu)造。手動調(diào)用父類構(gòu)造會覆蓋默認的super()。 super() 和 this() 都必須是在構(gòu)造方法的第一行,所以不能同時出現(xiàn)。

繼承的特點

1.Java只支持單繼承,不支持多繼承。

//一個類只能有一個父類,不可以有多個父類。 class C extends A{} //ok class C extends A,B... //error

2.Java支持多層繼承(繼承體系)。

class A{} class B extends A{} class C extends B{}

頂層父類是Object類。所有的類默認繼承Object,作為父類。

3.子類和父類是一種相對的概念。

到此這篇關(guān)于Java中super和this關(guān)鍵字詳解的文章就介紹到這了,更多相關(guān)Java super和this內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

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

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

    這篇文章主要介紹了Java面向?qū)ο笾甪inal關(guān)鍵字詳細解讀,final修飾的屬性又叫常量,一般用 XX_XX_XX來命名,final修飾的屬性在定義時必須賦初始值,并且以后不能再修改,需要的朋友可以參考下
    2024-01-01
  • spring boot配合前端實現(xiàn)跨域請求訪問

    spring boot配合前端實現(xiàn)跨域請求訪問

    本篇文章主要介紹了spring boot配合前端實現(xiàn)跨域請求訪問,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • Java?Thread?類和Runnable?接口詳解

    Java?Thread?類和Runnable?接口詳解

    這篇文章主要介紹了Java?Thread?類和Runnable接口詳解,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-08-08
  • Jmeter內(nèi)置變量vars和props的使用詳解

    Jmeter內(nèi)置變量vars和props的使用詳解

    JMeter是一個功能強大的負載測試工具,它提供了許多有用的內(nèi)置變量來支持測試過程,其中最常用的變量是 vars 和 props,本文通過代碼示例詳細給大家介紹了Jmeter內(nèi)置變量vars和props的使用,需要的朋友可以參考下
    2024-08-08
  • java hashtable實現(xiàn)代碼

    java hashtable實現(xiàn)代碼

    這篇文章介紹了java hashtable實現(xiàn)代碼,有需要的朋友可以參考一下
    2013-10-10
  • JVM方法調(diào)用invokevirtual詳解

    JVM方法調(diào)用invokevirtual詳解

    JVM調(diào)用方法有五條指令,分別是invokestatic,invokespecial,invokevirtual,invokeinterface,invokedynamic,這篇文章主要說明invokevirtual方法的調(diào)用問題,本文通過實例代碼給大家介紹的非常詳細,需要的朋友參考下吧
    2022-03-03
  • 使用Java代碼實現(xiàn)RocketMQ的生產(chǎn)與消費消息

    使用Java代碼實現(xiàn)RocketMQ的生產(chǎn)與消費消息

    這篇文章介紹一下其他的小組件以及使用Java代碼實現(xiàn)生產(chǎn)者對消息的生成,消費者消費消息等知識點,并通過代碼示例介紹的非常詳細,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-07-07
  • java操作mongodb實現(xiàn)CURD功能實例

    java操作mongodb實現(xiàn)CURD功能實例

    mongodb支持多種語言,并且提供了多種語言的驅(qū)動,本文使用java操作mongodb實現(xiàn)CURD功能,大家參考使用吧
    2013-12-12
  • 如何使用bootstrap.yml讀取配置中心的配置文件

    如何使用bootstrap.yml讀取配置中心的配置文件

    這篇文章主要介紹了如何使用bootstrap.yml讀取配置中心的配置文件問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • 基于Process#waitFor()阻塞問題的解決

    基于Process#waitFor()阻塞問題的解決

    這篇文章主要介紹了Process#waitFor()阻塞問題的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12

最新評論