面向物件程式設計思想總結
super關鍵字:我們可以通過super關鍵字來實現對父類成員的訪問,用來引用當前物件的父類。
this關鍵字:指向自己的引用。
重寫是子類對父類的允許訪問的方法的實現過程進行重新編寫, 返回值和形參都不能改變。即外殼不變,核心重寫!
重寫的好處在於子類可以根據需要,定義特定於自己的行為。 也就是說子類能夠根據需要實現父類的方法。
如果不能繼承一個方法,則不能重寫這個方法。
過載(overloading) 是在一個類裡面,方法名字相同,而引數不同。返回型別可以相同也可以不同。
重寫是父類與子類之間多型性的一種表現,過載可以理解成多型的具體表現形式。
過載是為了該類擴充套件功能適應各種可能發生的情況;重寫是為了適應子類的一種情況;
要想呼叫父類中被重寫的方法,則必須使用關鍵字super。

20171102-1.jpg
多型是同一個行為具有多個不同表現形式或形態的能力。
多型就是同一個介面,使用不同的例項而執行不同操作

dt-java.png
- 消除型別之間的耦合關係
- 可替換性
- 可擴充性
- 介面性
- 靈活性
- 簡化性
多型存在的三個必要條件
繼承
重寫
父類引用指向子類物件
問答易錯點
抽象類中不一定包含抽象方法,但是有抽象方法的類必定是抽象類。
抽象類的子類必須給出抽象類中的抽象方法的具體實現,除非該子類也是抽象類。
封裝可以被認為是一個保護屏障,防止該類的程式碼和資料被外部類定義的程式碼隨機訪問。
• 介面中每一個方法也是隱式抽象的,介面中的方法會被隱式的指定為 public abstract(只能是 public abstract,其他修飾符都會報錯)。
• 介面中可以含有變數,但是介面中的變數會被隱式的指定為 public static final 變數(並且只能是 public,用 private 修飾會報編譯錯誤)。