日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

1.19 利用内部类实现多重继承

發(fā)布時(shí)間:2025/3/20 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 1.19 利用内部类实现多重继承 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

多重繼承指的是一個(gè)類可以同時(shí)從多于一個(gè)的父類那里繼承行為和特征,然而我們知道 Java 為了保證數(shù)據(jù)安全,只允許單繼承。

有些時(shí)候我們會(huì)認(rèn)為如果系統(tǒng)中需要使用多重繼承,那往往都是糟糕的設(shè)想,這時(shí)開發(fā)人員往往需要思考的不是怎么使用多重繼承,而是他的設(shè)計(jì)是否存在問(wèn)題。但是,有時(shí)候開發(fā)人員確實(shí)需要實(shí)現(xiàn)多重繼承,而且現(xiàn)實(shí)生活中真正地存在這樣的情況,例如遺傳,我們既繼承了父親的行為和特征,也繼承了母親的行為和特征。

Java 提供的兩種方法讓我們實(shí)現(xiàn)多重繼承:接口和內(nèi)部類。

例 1
本節(jié)我們以生活中常見的遺傳例子進(jìn)行介紹,如兒子(或者女兒)是如何利用多重繼承來(lái)繼承父親和母親的優(yōu)良基因的。

1)創(chuàng)建 Father 類,在該類中添加 strong() 方法。代碼如下:

public class Father {public int strong() { // 強(qiáng)壯指數(shù)return 9;} }

2)創(chuàng)建 Mother 類,在該類中添加 kind() 方法。代碼如下:

public class Mother {public int kind() { // 友好指數(shù)return 8;} }

3)重點(diǎn)在于兒子類的實(shí)現(xiàn),創(chuàng)建 Son 類,在該類中通過(guò)內(nèi)部類實(shí)現(xiàn)多重繼承。代碼如下:

public class Son {// 內(nèi)部類繼承Father類class Father_1 extends Father {public int strong() {return super.strong() + 1;}}class Mother_1 extends Mother {public int kind() {return super.kind() - 2;}}public int getStrong() {return new Father_1().strong();}public int getKind() {return new Mother_1().kind();} }

上述代碼定義兩個(gè)內(nèi)部類,這兩個(gè)內(nèi)部類分別繼承 Father(父親)類和 Mother(母親)類,且都可以獲取各自父類的行為。這是內(nèi)部類一個(gè)很重要的特性:內(nèi)部類可以繼承一個(gè)與外部類無(wú)關(guān)的類,從而保證內(nèi)部類的獨(dú)立性。正是基于這一點(diǎn),多重繼承才會(huì)成為可能。

4)創(chuàng)建 Test 類進(jìn)行測(cè)試,在 main() 方法中實(shí)例化 Son 類的對(duì)象,然后分別調(diào)用該對(duì)象的 getStrong() 方法和 getKind() 方法。代碼如下:

public class Test {public static void main(String[] args) {Son son = new Son();System.out.println("Son 的強(qiáng)壯指數(shù):" + son.getStrong());System.out.println("Son 的友好指數(shù):" + son.getKind());} }

執(zhí)行上述代碼,輸出結(jié)果如下:

Son 的強(qiáng)壯指數(shù):10 Son 的友好指數(shù):6

從實(shí)現(xiàn)代碼和輸出結(jié)果可以發(fā)現(xiàn),兒子繼承父類,變得比父親更加強(qiáng)壯;同時(shí)也繼承了母類,只不過(guò)友好指數(shù)下降。

總結(jié)

以上是生活随笔為你收集整理的1.19 利用内部类实现多重继承的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。