Java入門第二季第三章

繼承

1.繼承的概念:

繼承是類與類的一種關(guān)系,是一種“is a”的關(guān)系;

注:java中的繼承是單繼承;

2.繼承的好處:

子類擁有父類的所有屬性和方法;

實(shí)現(xiàn)代碼復(fù)用;

3.語(yǔ)法規(guī)則:

class 子類 extends父類

例:

class Dog extends Animal{

...

}

方法的重寫:

如果子類對(duì)繼承父類的方法不滿意,是可以重寫父類繼承的方法的,當(dāng)調(diào)用方法時(shí)會(huì)優(yōu)先調(diào)用子類的方法。

語(yǔ)法規(guī)則:

a.返回值類型

b.方法名

c.參數(shù)類型及個(gè)數(shù)

都要與父類繼承的方法相同,才叫方法的重寫。


繼承的初始化順序;

1.初始化父類再初始化子類;

2.先執(zhí)行初始化對(duì)象中的屬性,再執(zhí)行構(gòu)造方法中的初始化;

具體:

先執(zhí)行父類的屬性初始化,再執(zhí)行父類的構(gòu)造方法,再執(zhí)行子類的屬性初始化,最后執(zhí)行子類的構(gòu)造方法;


final關(guān)鍵字:

使用final關(guān)鍵字做標(biāo)識(shí)有‘最終的“含義;

final可以修飾類,方法,屬性,變量;

final修飾類時(shí),類不可以被繼承;

final修飾方法時(shí),方法不可以被覆蓋(重寫);

final修飾屬性時(shí),則該類的屬性不會(huì)進(jìn)行隱式的初始化(類的初始化屬性必須有值)或在構(gòu)造方法中賦值(二者只能選其一);

final修飾變量,變量只能賦一次值,即變成常量;


super關(guān)鍵字:

在對(duì)象的內(nèi)部使用,可以代表父類對(duì)象。

1.訪問(wèn)父類的屬性

super.age

2.訪問(wèn)父類的方法

super.eat()

super的應(yīng)用

子類的構(gòu)造的過(guò)程當(dāng)中必須調(diào)用其父類的構(gòu)造方法;

如果子類的構(gòu)造方法中沒(méi)有顯示調(diào)用父類的構(gòu)造方法,則系統(tǒng)默認(rèn)調(diào)用父類無(wú)參的構(gòu)造方法。

如果顯示的調(diào)用構(gòu)造方法,必須在子類的構(gòu)造方法的第一行。

如果子類構(gòu)造方法中既沒(méi)有顯式調(diào)用父類的構(gòu)造方法,而父類又沒(méi)有無(wú)參的構(gòu)造方法,則編譯出錯(cuò);


Object 類

Object是所有類的父類,如果一個(gè)類沒(méi)有使用extends關(guān)鍵字明確標(biāo)識(shí)繼承另外一個(gè)類,那么這個(gè)類默認(rèn)繼承Object類;

Object類中的方法,適合所有子類;?

1.toString () 方法:

在Object類里定義toString ()方法的時(shí)候返回的對(duì)象的哈希code碼(對(duì)象地址字符串)

可以通過(guò)重寫toString() 方法表示出對(duì)象的屬性;


equals()方法:

比較的是對(duì)象的引用是否指向同一塊地址。

Dog dog=new Dog()

一般情況下比較兩個(gè)對(duì)象時(shí)比較他們的值是否一致,所以要進(jìn)行重寫。

這章知識(shí)點(diǎn)很多,需要仔細(xì)學(xué)習(xí),感謝慕課網(wǎng)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 123.繼承 一個(gè)類可以從另外一個(gè)類繼承方法,屬性和其他特征。當(dāng)一個(gè)類繼承另外一個(gè)類時(shí), 繼承類叫子類, 被繼承的...
    無(wú)灃閱讀 1,423評(píng)論 2 4
  • 下標(biāo)腳本 下標(biāo)腳本 可以定義在類、結(jié)構(gòu)體和枚舉這些目標(biāo)中,可以認(rèn)為是訪問(wèn)集合(collection),列表(li...
    cht005288閱讀 461評(píng)論 0 0
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚_t_閱讀 31,754評(píng)論 18 399
  • 一:java概述:1,JDK:Java Development Kit,java的開發(fā)和運(yùn)行環(huán)境,java的開發(fā)工...
    ZaneInTheSun閱讀 2,687評(píng)論 0 11
  • 20- 枚舉,枚舉原始值,枚舉相關(guān)值,switch提取枚舉關(guān)聯(lián)值 Swift枚舉: Swift中的枚舉比OC中的枚...
    iOS_恒仔閱讀 2,313評(píng)論 1 6