繼承 和 多態。
面向對象編程(Object Oriented Programming,OOP,面向對象程序設計)是一種計算機編程架構。OOP 的一條基本原則是計算機程序是由單個能夠起到子程序作用的單元或對象組合而成。OOP 達到了軟體工程的三個主要目標:重用性、靈活性和擴展性。為了實現整體運算,每個對象都能夠接收信息、處理數據和向其它對象發送信息。
【繼承】繼承是讓某個類型的對象獲得另一個類型的對象的特徵。通過繼承可以實現代碼的重用:從已存在的類派生出的一個新類將自動具有原來那個類的特性,同時,它還可以擁有自己的新特性。
【多態】多態是指不同事物具有不同表現形式的能力。多態機制使具有不同內部結構的對象可以共享相同的外部介面,通過這種方式減少代碼的復雜度。
面向對象程序設計中的概念主要包括:對象、類、數據抽象、繼承、動態綁定、數據封裝、多態性、消息傳遞。通過這些概念面向對象的思想得到了具體的體現。
1)對象 對象是運行期的基本實體,它是一個封裝了數據和操作這些數據的代碼的邏輯實體。
2)類 類是具有相同類型的對象的抽象。一個對象所包含的所有數據和代碼可以通過類來構造。
3)封裝 封裝是將數據和代碼捆綁到一起,避免了外界的干擾和不確定性。對象的某些數據和代碼可以是私有的,不能被外界訪問,以此實現對數據和代碼不同級別的訪問許可權。
4)繼承 繼承是讓某個類型的對象獲得另一個類型的對象的特徵。通過繼承可以實現代碼的重用:從已存在的類派生出的一個新類將自動具有原來那個類的特性,同時,它還可以擁有自己的新特性。
5)多態 多態是指不同事物具有不同表現形式的能力。多態機制使具有不同內部結構的對象可以共享相同的外部介面,通過這種方式減少代碼的復雜度。
6)動態綁定 綁定指的是將一個過程調用與相應代碼鏈接起來的行為。動態綁定是指與給定的過程調用相關聯的代碼只有在運行期才可知的一種綁定,它是多態實現的具體形式。
7)消息傳遞 對象之間需要相互溝通,溝通的途徑就是對象之間收發信息。消息內容包括接收消息的對象的標識,需要調用的函數的標識,以及必要的信息。消息傳遞的概念使得對現實世界的描述更容易。
8)方法 方法(Method)把執行的代碼整合在一個方法中,當需要做這些動作的時候直接通過調用這個方法而達到使用的目的。
⑵ 什麼是面向對象的程序設計語言
所謂面向對象的程序設計,就是把面向對象的思想應用到軟體工程中,並指導開發維護軟體。 對象是由數據和容許的操作組成的封裝體,所謂面向對象,就是基於對象的概念,以對象為中心,類和繼承為構造機制,認識了解刻畫客觀世界以及開發出相應的軟體系統。 面向對象的程序設計(OOP)並不是剛剛提出來的,主要是由於C++和Java這類語言的傳播,OOP最近才顯得越來越重要了。為什麼面向對象的設計如此流行呢?從理論上講,用面向對象的語言可以處理任何其他計算機語言所能完成的事情。然而當建立基於智能體的模型時,OOP對於開始的程序員和後來的程序讀者都表現出了很大的優勢。
⑶ 什麼是面向對象編程
它通過給程序中加入擴展語句,把函數「封裝」進編程所必需的「對象」中。面向對象的編程語言使得復雜的工作條理清晰、編寫容易。說它是一場革命,不是對對象本身而言,而是對它們處理工作的能力而言。對象並不與傳統程序設計和編程方法兼容,只是部分面向對象反而會使情形更糟。除非整個開發環境都是面向對象的,否則對象產生的好處還沒有帶來的麻煩多。有人可能會說PHP不是一個真正的面向對象編程的語言, PHP 是一個混合型 語言,你可以使用面向對象編程,也可以使用傳統的過程化編程。然而,對於大型項目的開發,你可能想需要在PHP中使用純的面向對象編程去聲明類,而且在你的項目開發只用對象和類。隨著項目越來越大,使用面向對象編程可能會有幫助,面向對象編程代碼很容易維護,容易理解和重復使用,這些就是軟體工程的基礎。在基於Web的項目中應用這些概念就成為將來網站成功的關鍵。 對象(Object)是問題域或實現域中某些事物的一個抽象,它反映此事物在系統中需要保存的信息和發揮的作用;它是一組屬性和有權對這些屬性進行操作的一組服務的封裝體。 關於對象要從兩方面理解:一方面指系統所要處理的現實世界中的對象;另一方面對象是計算機不直接處理的對象,而是處理相應的計算機表示,這種計算機表示也稱為對象。簡單的來說,一個人就是一個對象,一個尺子也可以說是個對象。
⑷ Java oop
OOP: Object Oriented Programming,面向對象的程序設計。所謂「對象」就是一個或一組數據以及處理這些數據的方法和過程的集合。面向對象的程序設計完全不同於傳統的面向過程程序設計,它大大地降低了軟體開發的難度,使編程就像搭積木一樣簡單,是當今電腦編程的一股勢不可擋的潮流。
面向對象編程(Object Oriented Programming,OOP,面向對象程序設計)是一種計算機編程架構。OOP 的一條基本原則是計算機程序是由單個能夠起到子程序作用的單元或對象組合而成。OOP 達到了軟體工程的三個主要目標:重用性、靈活性和擴展性。為了實現整體運算,每個對象都能夠接收信息、處理數據和向其它對象發送信息。OOP 主要有以下的概念和組件:
組件 - 數據和功能一起在運行著的計算機程序中形成的單元,組件在 OOP 計算機程序中是模塊和結構化的基礎。
抽象性 - 程序有能力忽略正在處理中信息的某些方面,即對信息主要方面關注的能力。
封裝 - 也叫做信息封裝:確保組件不會以不可預期的方式改變其它組件的內部狀態;只有在那些提供了內部狀態改變方法的組件中,才可以訪問其內部狀態。每類組件都提供了一個與其它組件聯系的介面,並規定了其它組件進行調用的方法。
多態性 - 組件的引用和類集會涉及到其它許多不同類型的組件,而且引用組件所產生的結果得依據實際調用的類型。
繼承性 - 允許在現存的組件基礎上創建子類組件,這統一並增強了多態性和封裝性。典型地來說就是用類來對組件進行分組,而且還可以定義新類為現存的類的擴展,這樣就可以將類組織成樹形或網狀結構,這體現了動作的通用性。
由於抽象性、封裝性、重用性以及便於使用等方面的原因,以組件為基礎的編程在腳本語言中已經變得特別流行。Python 和 Ruby 是最近才出現的語言,在開發時完全採用了 OOP 的思想,而流行的 Perl 腳本語言從版本5開始也慢慢地加入了新的面向對象的功能組件。用組件代替「現實」上的實體成為 JavaScript(ECMAScript)得以流行的原因,有論證表明對組件進行適當的組合就可以在英特網上代替 HTML 和 XML 的文檔對象模型(DOM)。
⑸ 面向對象的程序設計語言是什麼
面向對象程序設計(Object Oriented Programming,OOP)的實質是選用一種面向對象程序設計語言(OOPL),採用對象、類及其相關概念所進行的程序設計。
面向對象設計的結果,既可以用面向對象語言實現,也可以用非面向對象語言實現。面向對象程序設計語言本身就支持面向對象概念的實現,其編譯程序可以自動地實現面向對象概念到目標程序的映射。而且與非面向對象語言相比,面向對象語言還具有以下一些優點:
(1)一致的表示方法。
面向對象的採用方法從問題域表示到面向對象分析,再到面向對象設計與實現始終穩定不變。一致的表示方法不但有利於在軟體開發過程中始終使用統一的概念,也有利於維護人員理解軟體的各種配置成分。
(2)可重用性。
為了能帶來可觀的商業利益.必須在更廣泛的范圍中運用重用機制,而不是僅僅在程序設計這個層次上進行重用。軟體開發組織既可能重用它在某個問題域內的OOA結果,也可能重用相應的OOD和OOP結果。