面試——談談你對Java 物件導向思想的理解

笨鳥灬發表於2018-12-20

經典回答

要理解物件導向思想,我們先要知道什麼是物件?

《Java程式設計思想》中提到“萬物皆為物件”的概念。它將物件視為一種奇特的變數,它除了可以儲存資料之外還可以對它自身進行操作。它能夠直接反映現實生活中的事物,例如人、車、小鳥等,將其表示為程式中的物件。每個物件都具有各自的狀態特徵(也可以稱為屬性)及行為特徵(方法),java就是通過物件之間行為的互動來解決問題的。

物件導向就是把構成問題的事物分解成一個個物件,建立物件不是為了實現一個步驟,而是為了描述某個事物在解決問題中的行為。

類是物件導向中的一個很重要的概念,因為類是很多個具有相同屬性和行為特徵的物件所抽象出來的,物件是類的一個例項。

類具有三個特性:封裝、繼承和多型。

  • 封裝:核心思想就是“隱藏細節”、“資料安全”,將物件不需要讓外界訪問的成員變數和方法私有化,只提供符合開發者意願的公有方法來訪問這些資料和邏輯,保證了資料的安全和程式的穩定。
  • 繼承:子類可以繼承父類的屬性和方法,並對其進行擴充。
  • 多型:同一種型別的物件執行同一個方法時可以表現出不同的行為特徵。通過繼承的上下轉型、介面的回撥以及方法的重寫和過載可以實現多型。

相關文章