JAVA_SE基礎知識——繼承

1、繼承

繼承:將重複代碼抽取到父類中就爲繼承
優點:方便修改代碼,減少代碼量

2、如何使用繼承

a、編寫父類
	class Pet{ 公共的屬性和方法 }
b、編寫子類,繼承父類
	class Dog extends Pet{ 子類特有的屬性和方法 }

關鍵字:extends   繼承
	super	代表父類對象

一個子類只能繼承一個父類

3、子類訪問父類成員

a、訪問構造方法:super();super(name);
使用super關鍵字。在子類構造方法中調用且必須是第一句
b、訪問父類屬性:super.name;
c、訪問父類方法:super.print();

super只能出現在子類的方法和構造方法中,super不能訪問父類的private成員

4、子類不是可以繼承父類的所有資源

不能被繼承的父類成員:a、private成員;
		     b、子類與父類不在同包,使用默認訪問權限的成員
		     c、構造方法


可以被繼承的包括:除了上述的三種都可以

5、protected 訪問修飾符

可以修飾屬性和方法,在本類、同包 、子類可以訪問

系統默認的修飾符是friendly,在本類和同包中有效
從嚴到寬鬆的順序:private--friendly--protected--public

6、多重繼承關係的初始化順序

父類的屬性-->父類的構造方法-->子類的屬性-->子類的構造方法

7、何時使用繼承

    符合 is-a關係的設計使用繼承,假設有兩個類A、B,他們符合A是B的一種或者B是A的一
	種,就可以考慮使用繼承。
      
   繼承是代碼重用的一種方式,將子類的共有屬性和行爲放到父類中

8、繼承關係

繼承關係中,找不到父類的帶參構造方法,默認執行父類的無參構造方法
繼承父類的構造方法要用super

9、方法的重寫與方法的重載:

重載(Overlode):方法名相同、參數不同、與訪問修飾控制符和返回值無關  在同類中
重寫(Override):方法名相同、參數相同、與訪問修飾控制符和返回值有關  子類重寫父類的方法
(返回值必須和父類相同或父類的子類、子類的訪問修飾控制符與父類相同或者權限比父類寬鬆)

10、abstract

 抽象類 限制實例化
 可以修飾類和方法,不能修飾屬性。修飾方法時,稱爲抽象方法,沒有方法體分號結尾,抽象方法
 必須在抽象類裏面,抽象方法必須在子類中被實現,除非子類是抽象類。修飾類時,類就不能被實例化。
	
爲什麼用抽象代碼?每個子類的要求方法不同,父類只定義方法,不定義方法體,子類對方法重寫	

11、final

修飾類:最終版的類,不能被其他類繼承
修飾屬性:變成常量,不會被修改
修飾方法	:最終版的方法,不被重寫	

12、條件運算符

三目運算符: 關係表達式1?表達式2:表達式3
	(a>b)?a+b:a-b	a>b爲真執行a+b;a>b爲假執行a-b。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章