Java學習進階(面向對象:繼承-封裝-多態)

面向對象三大特徵:(1)繼承;(2)封裝;(3)多態。 

一. 繼承(extends)

1. 繼承要點

  • java中類只有單繼承,C++中可以多繼承,java接口可以多繼承;
  • 子類繼承父類,即子類可以得到父類的方法和變量屬性(但並非全部可以訪問,在父類變量或方法進行私有化子類不可以訪問) 
  • 任何類都是java.lang.Object的子類
  • instanceof運算符爲二元運算符(左對象,右邊類),返回類型爲Boolean類型。

2. 重載與方法重寫

  • overload:指一個類中有多構造器,傳入參數不同
  • override:指子類繼承父類,並對父類的某變量或者方法進行重寫,使得子類更適用於自己的行爲。

3. Object類和重寫toString方法

4. ==和equals方法

==表示比較的雙方是否相同,基本數據類型表示比較值是否相等;引用類型表示比較的地址是否相等即對象

equals方法比較對象內容是否相同(邏輯關係)

5. super關鍵字

表示直接父類對象的引用,可以通過super來訪問父類中被子類覆蓋的方法和屬性。寫與不寫都一樣存在。宗位於構造器第一句。

二. 封裝

1. 特點:高內聚,低耦合

2. 常見訪問控制符

(1)private:表示私有,只有自己能訪問

(2)default:表示沒有修飾符修飾,只有同一個包的類能訪問

(3)protected:表示可以被同一個包的類以及其他包中的子類訪問

(4)public:表示可以被該項目的所有類訪問

 

 

三. 多態  

1.定義:同一個方法調用,由於對象不同可能會有不同的行爲

2. 要點

  • 多態僅僅指的是方法的多態
  • 三個必要條件:繼承、方法重寫、父類引用指向子類的對象
  • 父類引用指向子類的對象後,用該父類的引用調用子類重寫的方法,此時多態就出現

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章