面向物件程式設計(Object Oriented Programming,OOP)是一種計算機程式設計架構。OOP的一條基本原則是計算機程式由單個能夠起到子程式作用的單元或物件組合而成。OOP達到了軟體工程的三個主要目標:重用性、靈活性和擴充套件性。OOP=物件+類+繼承+多型+訊息,其中核心概念是類和物件。
名詞解釋
面向物件程式設計中的概念主要包括:物件、類、資料抽象、繼承、動態繫結、資料封裝、多型性、訊息傳遞。透過這些概念面向物件的思想得到了具體的體現。
1)物件(Object) :
可以對其做事情的一些東西。一個物件有狀態、行為和標識三種屬性。
2)類(class):
一個共享相同結構和行為的物件的集合。類(Class)定義了一件事物的抽象特點。通常來說,類定義了事物的屬性和它可以做到的(它的行為)。舉例來說,“狗”這個類會包含狗的一切基礎特徵,例如它的孕育、毛皮顏色和吠叫的能力。類可以為程式提供模版和結構。一個類的方法和屬性被稱為“成員”。
3)封裝(encapsulation):
第一層意思:將資料和操作捆綁在一起,創造出一個新的型別的過程。第二層意思:將介面與實現分離的過程。
4)繼承:
類之間的關係,在這種關係中,一個類共享了一個或多個其他類定義的結構和行為。繼承描述了類之間的“是一種”關係。子類可以對基類的行為進行擴充套件、覆蓋、重定義。
5)組合:
既是類之間的關係也是物件之間的關係。在這種關係中一個物件或者類包含了其他的物件和類。
組合描述了“有”關係。
6)多型:
型別理論中的一個概念,一個名稱可以表示很多不同類的物件,這些類和一個共同超類有關。因此,這個名稱表示的任何物件可以以不同的方式響應一些共同的操作集合。
7)動態繫結:
也稱動態型別,指的是一個物件或者表示式的型別直到執行時才確定。通常由編譯器插入特殊程式碼來實現。與之對立的是靜態型別。
8)靜態繫結:
也稱靜態型別,指的是一個物件或者表示式的型別在編譯時確定。
9)訊息傳遞:
指的是一個物件呼叫了另一個物件的方法(或者稱為成員函式)。
10)方法:
也稱為成員函式,是指物件上的操作,作為類宣告的一部分來定義。方法定義了可以對一個物件執行那些操作。
面向物件程式設計(Object Oriented Programming,OOP)是一種計算機程式設計架構。OOP的一條基本原則是計算機程式由單個能夠起到子程式作用的單元或物件組合而成。OOP達到了軟體工程的三個主要目標:重用性、靈活性和擴充套件性。OOP=物件+類+繼承+多型+訊息,其中核心概念是類和物件。
名詞解釋
面向物件程式設計中的概念主要包括:物件、類、資料抽象、繼承、動態繫結、資料封裝、多型性、訊息傳遞。透過這些概念面向物件的思想得到了具體的體現。
1)物件(Object) :
可以對其做事情的一些東西。一個物件有狀態、行為和標識三種屬性。
2)類(class):
一個共享相同結構和行為的物件的集合。類(Class)定義了一件事物的抽象特點。通常來說,類定義了事物的屬性和它可以做到的(它的行為)。舉例來說,“狗”這個類會包含狗的一切基礎特徵,例如它的孕育、毛皮顏色和吠叫的能力。類可以為程式提供模版和結構。一個類的方法和屬性被稱為“成員”。
3)封裝(encapsulation):
第一層意思:將資料和操作捆綁在一起,創造出一個新的型別的過程。第二層意思:將介面與實現分離的過程。
4)繼承:
類之間的關係,在這種關係中,一個類共享了一個或多個其他類定義的結構和行為。繼承描述了類之間的“是一種”關係。子類可以對基類的行為進行擴充套件、覆蓋、重定義。
5)組合:
既是類之間的關係也是物件之間的關係。在這種關係中一個物件或者類包含了其他的物件和類。
組合描述了“有”關係。
6)多型:
型別理論中的一個概念,一個名稱可以表示很多不同類的物件,這些類和一個共同超類有關。因此,這個名稱表示的任何物件可以以不同的方式響應一些共同的操作集合。
7)動態繫結:
也稱動態型別,指的是一個物件或者表示式的型別直到執行時才確定。通常由編譯器插入特殊程式碼來實現。與之對立的是靜態型別。
8)靜態繫結:
也稱靜態型別,指的是一個物件或者表示式的型別在編譯時確定。
9)訊息傳遞:
指的是一個物件呼叫了另一個物件的方法(或者稱為成員函式)。
10)方法:
也稱為成員函式,是指物件上的操作,作為類宣告的一部分來定義。方法定義了可以對一個物件執行那些操作。