国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

Java中super和this的用法詳解

瀏覽:7日期:2022-08-26 14:26:10

super 用法super關(guān)鍵字用來訪問父類內(nèi)容,具體用法可分為三種:1.子類的成員方法訪問父類的成員變量

public class Animal { public int age = 10;}class Dog extends Animal { public int age = 5; public void showAge() { System.out.println(super.age); }}

2.子類的成員方法訪問父類的成員方法

public class Animal { public void fn(){ System.out.println('父類Animal的方法'); }}class Dog extends Animal { @Override public void fn() { super.fn(); System.out.println('子類Dog的方法'); }}

3.子類的構(gòu)造方法訪問父類的構(gòu)造方法

public class Animal { public Animal() { System.out.println('父類Animal的構(gòu)造方法'); }}class Dog extends Animal { public Dog() { super(); System.out.println('子類Dog的構(gòu)造方法'); }}

this 用法this關(guān)鍵字用來訪問本類內(nèi)容,具體用法可分為三種:1.本類的成員方法訪問本類的成員變量

public class Dog extends Animal { public int age = 1; public void showAge() { int age = 3; System.out.println(age); System.out.println(this.age); }}

2.本類的成員方法訪問本類的另一成員方法

public class Dog extends Animal { public int age = 1; public void showAge() { int age = 3; System.out.println(age); System.out.println(this.age); } public void fn() { this.showAge(); }}

3.本類的構(gòu)造方法訪問本類的另一個(gè)構(gòu)造方法,此時(shí)this(…)調(diào)用必須放在這個(gè)構(gòu)造方法中的第一句,且只能使用一次

public class Dog extends Animal { public Dog() { this(2); System.out.println('無參構(gòu)造'); } public Dog(int age) { System.out.println(age); System.out.println('有參構(gòu)造'); }}

super和this內(nèi)存圖解

Java中super和this的用法詳解

方法區(qū)中存放包含主方法的Demo、父類和子類的class對(duì)象,編譯后在子類的class對(duì)象中會(huì)有一個(gè)super_class標(biāo)記指向父類,表明二者的繼承關(guān)系 主方法進(jìn)棧,執(zhí)行語句new一個(gè)子類對(duì)象,棧中存放該對(duì)象的地址值,指向堆中開辟的一塊用于存放該子類對(duì)象的內(nèi)存,注意堆中子類對(duì)象內(nèi)容還包括完整的父類結(jié)構(gòu) 主方法中執(zhí)行子類的show方法,show方法進(jìn)棧,棧中存放show方法中的局部變量num,輸出局部變量num的值,接著輸出this.num,this指向子類對(duì)象,this.num得到堆中子類變量num的值,最后輸出super.num得到的是堆中存儲(chǔ)的父類變量的值 主方法執(zhí)行子類的method方法,子類method方法進(jìn)棧,子類method方法中使用super.method()調(diào)用父類的method方法,父類的method方法進(jìn)棧

總結(jié)

到此這篇關(guān)于Java中super和this的用法的文章就介紹到這了,更多相關(guān)Java中super和this的用法內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 威信县| 克什克腾旗| 于田县| 青田县| 昌黎县| 桓仁| 五常市| 大冶市| 卢湾区| 广昌县| 宜州市| 涞水县| 乌恰县| 乌拉特后旗| 利川市| 瑞丽市| 多伦县| 启东市| 始兴县| 鹤庆县| 始兴县| 九江市| 郑州市| 鹿邑县| 越西县| 来宾市| 平邑县| 柘荣县| 进贤县| 崇礼县| 华安县| 凉山| 商河县| 营山县| 图们市| 崇州市| 汾阳市| 富民县| 巴林左旗| 嘉善县| 青川县|