1. 程式人生 > >Java複習(1)—三大特性

Java複習(1)—三大特性

封裝:隱藏類的內部實現,可以在不影響使用的情況下改變類的內部結構,同時也保護了資料。將抽象得到的資料和行為(或功能)相結合,形成一個有機的整體,也就是將資料與操作資料的原始碼進行有機的結合,形成“類”,其中資料和函式都是類的成員。封裝的目的是增強安全性和簡化程式設計,使用者不必瞭解具體的實現細節,只要通過外部介面和特定的訪問許可權來使用類的成員。封裝的基本要求是:把所有的屬性私有化,對每個屬性提供gettersetter方法,如果有一個帶參的建構函式的話,那一定要寫一個不帶參的建構函式。在開發的時候經常要對已經編寫的類進行測試,所以在有的時候還有重寫toString方法,但這不是必須的。

使用封裝的好處:

良好的封裝能夠減少耦合;類內部的結構可以自由修改;可以對成員進行更精確的控制;隱藏資訊和實現細節。

繼承:通過繼承實現程式碼複用Java中所有的類都是通過直接或間接地繼承java.lang.Object類得到的。子類不能繼承父類中訪問許可權為private的成員變數和方法。子類可以重寫父類的方法,及命名與父類同名的成員變數。但Java不支援多重繼承。在開發中儘量減少繼承關係,這樣做是為了把程式的耦合度降低。

多型:分為設計時多型和執行時多型,例如過載又被稱為設計時多型,而對於覆蓋或繼承的方法,JAVA執行時系統根據呼叫該方法的例項的型別來決定選擇呼叫哪個方法則被稱為執行時多型。

Java實現多型有三個必要條件:繼承、重寫、向上轉型。

         繼承:在多型中必須存在有繼承關係的子類和父類。

         重寫:子類對父類中某些方法進行重新定義,在呼叫這些方法時就會呼叫子類的方法。

         向上轉型:在多型中需要將子類的引用賦給父類物件,只有這樣該引用才能夠具備技能呼叫父類的方法和子類的方法。