封裝
隐藏對象的屬性和實作細節,僅對外公開接口,控制程式中屬性的讀取和修改的通路級别;
封裝就是将抽象得到的資料和行為相結合,形成一個有機的整體,也就是将資料和操作資料的源代碼有機結合,形成 "類",其中屬性和函數都是類的成員。
封裝的目的是:增強安全性和簡化程式設計,使用者不必了解具體的實作細節,而隻是要通過外部接口,以特定的通路權限來使用類的成員。
繼承
子類繼承父類的特征和行為,使得子類具有父類的屬性和方法;
子類的建立可以增加新資料、新功能,可以繼承父類的全部功能,但是不能選擇性的繼承父類的部分功能;
繼承是類與類之間的關系,不是對象與對象之間的關系。
多态
父類的引用指向子類對象;
指允許不同子類的對象對同一消息作出不同的響應,即同一消息可以根據發送對象的不同而采用不同的行為方式 (發送消息就是函數調用) 。
多态的實作機制:動态綁定,指程式在運作期間會判斷所引用對象的實際類型,根據其實際類型調用對應的方法。
多态的作用:消除類型之間的耦合關系。
多态的三個必要條件:
1)有繼承關系
2)子類重寫父類方法
3)父類引用指向子類對象
多态的好處:
1)可替換性:多态對不同的子類對象都能正常調用相關方法;
2)可擴充性:多态對代碼具有可擴充性,增加新的子類不影響已存在類的特性的運作和操作;
3)接口性:多态是父類向子類提供一個公共接口,由子類完善或覆寫它而實作的;
4)靈活性:應用中不同類型的子類通過重寫公共方法,展現了靈活多樣的操作;
5)簡化性:多态簡化了代碼編寫和修改的過程。