一、繼承
1》定義:繼承是類與類的一種關係,是一種“ is a” 的關係。
注:JAVA中的繼承是單繼承
2》繼承的好處:
子類擁有父類的所有屬性和方法。但屬性和方法的修飾符不能是private。
實現代碼複用
3》語法規則:
class 子類 extends 父類
二、Java中的方法重寫
1》方法的重寫:
如果子類對繼承父類的方法不滿意,是可以重寫父類繼承的方法的,當調用方法時會優先調用子類的方法。
2》語法規則 :
a、返回值類型
b、方法名
c、參數類型及個數
都要與父類繼承的方法相同,才叫方法的重寫。
三、繼承的初始化順序
繼承的初始化順序:
1》初始化父類再初始子類
2》先執行初始化對象中屬性,再執行構造方法中的初始化。
四、Java中的final的使用
1》final 關鍵字
使用final關鍵字做標識有“最終的”含義,final可以修飾類、方法、屬性和變量
final修飾類,則該類不允許被繼承
final修飾方法,則該方法不允許被覆蓋(重寫)。
final修飾屬性,則該類的屬性不會進行隱式的初始化(類的初始化屬性必須有值)或在構造方法中賦值(但只能選其一)
final修飾變量,則該變量的值只能賦一次值,即變爲常量。
五、super關鍵字
1》super關鍵字:在對象的內部使用,可以代表父類對象。
2》訪問父類的屬性 super . 屬性
3》訪問父類的方法 super . 方法名()
4》super應用
1。子類的構造的過程當中必須調用其父類的構造方法
2。如果子類的構造方法中沒有顯式調用父類的構造方法,則系統默認調用父類無參的構造方法
如果顯式的調用構造方法,必須在子類的構造方法的第一行。
3。如果子類構造方法中既沒有顯式調用父類的構造方法,而父類又沒有無參的構造方法,則編譯出錯。
六、Java中的Object類
1》Object類是所有類的父類,如果一個類沒有使用extends關鍵字明確標識繼承另外一個類,那麼這個類默認繼承Object類。
2》Object類中的方法,適合所有的子類
3》toString()方法
在Object類裏面定義toString() 方法的時候返回的對象的哈希code碼(對象地址字符串)
哈希碼是根據哈希算法生成的一個字符串,用來唯一區分對象。
可以通過重寫toString()方法表示出對象的屬性
4》equals() 方法
比較的是對象的引用是否指向同一塊內存地址。
一般情況下比較兩個對象時比較它的值是否一致,所以要進行重寫。
每new一次相當於開闢了兩個內存空間。
getClass得到的是類對象,new類的時候是類的對象:
區別:類對象描述的是類的代碼信息,比如類有什麼屬性,類型,類的對象更多關注的是類的屬性值的信息,即類的數據信息。