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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

java 继承作用_java三大特性之继承

發(fā)布時間:2024/8/23 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 继承作用_java三大特性之继承 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

繼承(extends):

讓類與類之間產(chǎn)生關(guān)系,子父類的關(guān)系

繼承的好處與弊端:

好處:

提高代碼的復(fù)用性

提高了代碼的維護(hù)性

讓類與類之間產(chǎn)生關(guān)系,是多態(tài)的前提

弊端:

類的耦合性增加

開發(fā)的原則是:

1、高內(nèi)聚,低耦合

2、耦合:類與類的聯(lián)系

3、內(nèi)聚:就是自己完成某件事情的能力

繼承的特點(diǎn)(掌握):

Java只支持單繼承,子類只能有一個父類。

注:但是java中的接口功能支持多實(shí)現(xiàn)

Java支持多層繼承(爺-父-子)

java中類的繼承特點(diǎn):

如果想看這個體系的所有功能用最底層的類創(chuàng)建對象

如果想看共性功能,看最頂層的類

繼承的注意事項(掌握)

子類只能繼承父類的非私有的成員(成員變量和成員方法)

子類不能繼承父類的構(gòu)造器,但是可以通過super 關(guān)鍵字調(diào)用父類的構(gòu)造方法

不要為了部分功能而去強(qiáng)行繼承

適合使用繼承的環(huán)境:

當(dāng)兩者體現(xiàn)的是一種 is-a 的關(guān)系。

例如:

人-->男人

食物-->水果-->蘋果-->酸蘋果

this 和super的區(qū)別:

this代表當(dāng)前對象的引用,誰來調(diào)用我,我就代表誰

super代表父類對象的引用。

兩者使用區(qū)別

調(diào)用成員變量

this調(diào)用本類的成員變量,也可以調(diào)用父類的成員變量

super調(diào)用父類的成員變量

調(diào)用構(gòu)造方法

this調(diào)用本類的構(gòu)造方法

super調(diào)用父類的構(gòu)造方法

調(diào)用成員方法

this.成員方法 調(diào)用本類的成員方法,也可以調(diào)用父類的成員方法

super.成員方法 調(diào)用父類的成員方法

繼承中構(gòu)造方法的關(guān)系(掌握)

子類所有的構(gòu)造方法都會默認(rèn)訪問父類的構(gòu)造方法。

原因:

子類繼承父類的數(shù)據(jù),可能會使用父類的數(shù)據(jù)。

子類初始化前會先完成父類的初始化

每個構(gòu)造方法的第一條語句默認(rèn)都是:super();

Object類是最頂層的類(Everything is Object)萬物皆為對象

繼承中構(gòu)造方法的注意事項(掌握)

父類沒有構(gòu)造方法時,子類怎么辦?

super解決

this解決

注意:super(...)或者this(...)必須出現(xiàn)在構(gòu)造方法的第一條語句上。

方法的重寫的注意事項(掌握)

注意以下方法不會重寫

1、靜態(tài)方法不會重寫 ,父類為靜態(tài),子類只能為靜態(tài),否則編譯錯誤

2、final 修飾方法 否則編譯錯誤

3、私有方法不會重寫

4.子類重寫父類方法時,訪問權(quán)限不能更低最好寫成一致。

5.子類重寫父類的方法時,最好聲明一模一樣。

* Override和Overload的區(qū)別?Overload能改變返回值類型嗎?

* overload可以改變返回值類型,只看參數(shù)列表

* 方法重寫:子類中出現(xiàn)了和父類中方法聲明一模一樣的方法。與返回值類型有關(guān),返回值是一致(或者是子父類)的

* 方法重載:本類中出現(xiàn)的方法名一樣,參數(shù)列表不同的方法。與返回值類型無關(guān)。

* 子類對象調(diào)用方法的時候:

* 先找子類本身,再找父類。

final關(guān)鍵字(一把手術(shù)刀)

特點(diǎn):

修飾類:類不能被繼承

修飾變量:變量編程常量,只能初始賦值一次

修飾方法:不能被重寫

final修飾變量的初始化時機(jī):

顯示初始化

在對象構(gòu)造完畢前即可。

final 表示最終的。

不能修飾構(gòu)造方法

修飾類,表示該類不能被繼承.比喻成一把極其鋒利的手術(shù)刀,將父類閹割

修飾方法,表示該方法不能被重寫

修飾屬性,表示常量,值一旦確定不可改變。

final 修飾的方法不可以被覆蓋,但父類中沒有被 final 修飾方法,子類覆蓋后可以加 final。

class Fu {

// final 修飾的方法,不可以被覆蓋,但可以繼承使用

public final void method1(){}

public void method2(){}

}

class Zi extends Fu {

//重寫 method2 方法

public final void method2(){}

}

總結(jié)

以上是生活随笔為你收集整理的java 继承作用_java三大特性之继承的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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