1. 程式人生 > 程式設計 >每日一題:​面向物件的特徵有哪些?

每日一題:​面向物件的特徵有哪些?

問題:面向物件的特徵有哪些?

答:封裝,繼承,多型和抽象。

1. 封裝 封裝給物件提供了隱藏內部特性和行為的能力。物件提供一些能被其他物件訪問的方法來改變它內部的資料。在 Java 當中,有 3 種修飾符:public,private 和 protected。每一 種修飾符給其他的位於同一個包或者不同包下面物件賦予了不同的訪問許可權。

下面列出了使用封裝的一些好處:

  • 通過隱藏物件的屬性來保護物件內部的狀態
  • 提高了程式碼的可用性和可維護性,因為物件的行為可以被單獨的改變或者是擴充套件
  • 禁止物件之間的不良互動,提高模組化

2. 繼承 繼承給物件提供了從基類獲取欄位和方法的能力。繼承提供了程式碼的重用行,也可以在不修改類的情況下給現存的類新增新特性。

3. 多型 多型是程式語言給不同的底層資料型別做相同的介面展示的一種能力。一個多型型別上的操作可以應用到其他型別的值上面。

4. 抽象 抽象是把想法從具體的例項中分離出來的步驟,因此,要根據他們的功能而不是實現細節來建立類。Java 支援建立只暴露介面而不包含方法實現的抽象的類。這種抽象技術的主要目的是把類的行為和實現細節分離開。