天天看點

【面向對象】基本概念

對象:由其責任定義的,能夠自己負責自己,進而簡化了使用對象的控制程式的任務。将責任轉移到更局部的層次。
  • 概念層次:對象是一組責任。
  • 規約層次:對象是一組可以被其他對象或對象自己調用的方法(行為)。
  • 實作層次:對象是代碼和資料,以及它們之間的計算互動。

相關術語:

  • 抽象類(abstract class):定義一組相關類的行為。不能被執行個體化。充當其他類的占位符。
  • 類(class):根據對象所具有的責任定義對象的類型。責任:行為或狀态,這些分别是由方法和或資料實作的。
  • 具體類(concrete cass):實作抽象類某一特定類型行為的類,具體類是一個概念特定不變的實作。
  • 封裝(encapsulation):資料隐藏,包括任何形式的隐藏(類型,實作,設計等等)。
  • 繼承(inheritance):一個類繼承另一個類,接受了該類一些或所有性質。起始類稱為基類,超類,父類或泛化類。繼承類稱為派生類,子類或特化類。
  • 多态(polymorphism):用一種方式引用一個類的不同的派生類,但獲得的行為對應與所引用的派生類。
  • 執行個體(instance):類的特例(對象),每個對象都有自己的狀态。
  • 執行個體化(instantiation):建立類的一個執行個體化的過程。
  • 接口(interface):與類相似,但隻是為其成員提供規約而不是提供實作。與隻含有抽象成員的抽象類很相似。
  • 視角(perspective):觀察對象的三種視角:概念,規約,實作。eg.抽象類定義了如何在概念層次上解決問題,還提供了與任何派生了對象通信的規約。每個派生類都需要提供特定實作。
  • 構造函數:在建立對象時調用的特殊方法。
  • 析構函數:在銷毀對象時調用的特殊方法。
  • 功能分解:一種分析方法,将問題逐漸分解成小的功能。
  • 屬性:與對象關聯的資料
  • 成員:類的資料或方法
  • 方法:與對象關聯的例程
  • 對象:具有責任的實體。包含資料和操作的方法。其資料對于外部對象時受保護的。
  • 可通路性:公開(public)任何對象都能夠看見;保護(protected)隻有這類及其派生類的對象能夠看見;私有(private)隻有這個類的對象能夠看見。

繼續閱讀