封裝+繼承+多態

面向對象三大特性編程

封裝:

Encapsulation是指一種將抽象性函式接口的實現細節部份包裝、隱藏起來的方法。封裝能夠被認爲是一個保護屏障,防止該類的代碼和數據被外部類定義的代碼隨意訪問。要訪問該類的代碼和數據,必須經過嚴格的接口控制。封裝最主要的功能在於咱們能修改本身的實現代碼,而不用修改那些調用咱們代碼的程序片斷。適當的封裝可讓程式碼更容易理解與維護,也增強了程式碼的安全性。安全

繼承:

單從縱向看,子類經過繼承從父類獲得部分功能,實現代碼和功能的複用;當多個子類繼承公共父類時,如需修改公共部分代碼,則只需改動父類代碼,提升了代碼的可維護性。對象

  • 特性:
  1. 子類擁有父類非 private 的屬性、方法。
  2. 子類能夠擁有本身的屬性和方法,即子類能夠對父類進行擴展。
  3. 子類能夠用本身的方式實現父類的方法。
  4. Java 的繼承是單繼承,可是能夠多重繼承,單繼承就是一個子類只能繼承一個父類,多重繼承就是,例如 A 類繼承 B 類,B 類繼承 C 類,因此按照關係就是 C 類是 B 類的父類,B 類是 A 類的父類,這是 Java 繼承區別於 C++ 繼承的一個特性。
  5. 提升了類之間的耦合性(繼承的缺點,耦合度高就會形成代碼之間的聯繫越緊密,代碼獨立性越差)
  • 優勢:
  1. 良好的封裝可以減小耦合。
  2. 類內部的結構能夠自由修改。
  3. 能夠對成員變量進行更精確的控制。
  4. 隱藏信息,實現細節。繼承

    多態:

    多態是指對於客戶端而言的同一個行爲,具備多個不一樣表現形式或形態的能力。在編程中多態就是同一個接口,因爲使用了不一樣的實例而執行出不一樣操做和結果。
  • 前提:
  1. 繼承
  2. 重寫
  3. 父類引用指向子類對象
  • 優勢:
  1. 消除類型之間的耦合關係
  2. 可替換性
  3. 可擴充性
  4. 接口性
  5. 靈活性
  6. 簡化性
相關文章
相關標籤/搜索