(1)抽象(abstraction)—— 一個問題的本質特征。忽略一個對象的細節,致力于一般的合適級別的程序能力。抽象是在事物的周圍繪制透明的盒子,是定義事物接口的行為。
(2)信息隱藏(information hiding)—— 限制外部對類屬性(數據成員)的訪問。
(3)封裝(encapsulation)—— 將某種保密和隱匿應用到類中的數據和一些方法(函數或子例程)上。封裝確保一個對象只能通過確定的渠道(即類的公用方法)才可被修改。封裝意味著將數據及相關函數打包到一個單一的單元(類)中。每個對象暴露一個接口(公用方法),規定其他對象可以如何讀取或修改它。
(4)類(class)—— 問題的抽象,對象的模版,接口的實現。例如int是整數的模版、CPoint是點的模版。
(5)對象(object)—— 問題中的事物,類的實例(變量),擁有數據和功能。若int i; CPoint p; 則i是int的實例變量,p是CPoint的實例對象。
(6)實例(instance)—— 一個對象,是某個類的示例。
(7)實例化(intantiate)—— 由類定義創建對象。
(8)繼承(inheritance)—— 創建子類的機制,一種“is a”或“is like”關系,形成類層次結構。是OOP中對象重用的核心概念。
(9)子類(subclass)—— 繼承自另一個類的派生類(derived class)。
(10)超類(superclass父類)—— 被另一個類繼承的基類(base class)。
(11)虛函數(virtual function)—— 可以在子類中被覆蓋(override)的函數。
(12)純虛函數(pure virtual function)—— 只有聲明沒有定義的函數,必須在派生類中被覆蓋。
(13)抽象類(abstract class)—— 至少包含一個純虛函數的類,不能被實例化。
(14)具體類(concrete class)—— 可以實例化的類,不包含純虛函數。
(15)接口(interface)—— 純抽象的類,類的模版。接口中的所有的方法(成員函數)都只有聲明,沒有定義(都是純虛函數)。必須在接口的派生類中,實現接口的全部方法。接口可以看成是一個,定義了一套內部行為的,若干操作特征標記的集合。(在C++中,也把類的公用成員函數叫做接口)。
(16)屬性(attribute)—— 類和接口中的數據信息,又叫數據成員(data member)或成員變量(member variable)。屬性是類知道的事物。
(17)方法(method)—— 類操作的實現,又叫成員函數(member function)。方法是類要做的事情。(在C++中,也把虛函數叫做方法)。
(18)重載(overload)—— 一個類中的,參數的數目、類型或排列順序不同的多個同名方法(成員函數)。
(19)覆蓋(override)—— 在子類中重新定義(與父類中的定義有區別的)屬性和方法。
(20)持久化(persistence)—— 將對象存入永久存儲中(如文件、數據庫等)。
(21)持久對象(persistent object)—— 存入永久存儲的對象。
在上面眾多概念中,大家重點應該知道:類、對象、實例化、繼承、屬性、接口、方法、重載、覆蓋等概念,這樣我們在學習時才不會覺得暈。
新聞熱點
疑難解答