面對對象的3大特征是:封裝、繼承和多態
-
封裝
封裝就是將客觀的事物封裝成抽象的類,這個類包含這類事物共同的特性和行為,特性對應類的成員變量,行為對應類的成員方法。
封裝就是將一批具有相同特性和行為的客觀事物封裝成抽象類,這個類的成員變量對應事物的共同特性,成員方法對應事物的共同行為。
并且類可以讓自己的成員變量和成員方法讓可信的類或者對象訪問,不可信的進行信息隱藏。
-
封裝的優點
- 提高重用性
- 提高安全性
- 便于使用
-
封裝的實現
成員變量使用private修飾,同時提供公共的set和get方法。
-
繼承
繼承是指這樣的一種操作:可以使用原有類的所有功能,并且在不重新編寫原有類的情況下修改功能或者新增功能。
使子類擁有父類非private屬性和方法
通過繼承創建的新類稱為子類或派生類,被繼承的類稱為父類或基類或超類
-
繼承的優點
- 提高重用性
- 易于擴展
-
繼承的實現
使用extends關鍵字
-
繼承的特點
- 子類擁有父類非private修飾的成員變量和方法
- 子類可以定義自己的成員變量和方法
- 單繼承(一個類只能繼承一個父類),多重繼承(B繼承A,C繼承B)
- 子類可以使用super訪問父類的成員
ps:子類在實例化時,子類的構造方法必須首先調用父類的構造方法,否則編譯器會在子類的構造方法的第一行調用父類的無參構造方法。
-
多態
多態就是同一個方法,使用不同的實現,從而進行不同的操作。
-
實現多態的必要條件
- 繼承
- 重寫
- 父類的引用指向子類對象
本文參考https://www.fangzhipeng.com/javainterview/2019/02/19/object-factors.html