對象類 一個類定義了一組對象。類具有行為(be-havoir),它描述一個對象能夠做什么以及做的方法(method),它們是可以對這個對象進行操作的程序和過程。對象實例 一個對象是一個類的一個實例,它代表一個現實物理“事件”,例如在一個財物系統(tǒng)數據庫中的一個顧客或一個庫存部分。類的繼承(class inheritance)是一個重要的概念,它為一個子類繼承它的父類的內置描述提供了途徑。在父類中使用的代碼被向下傳給這個類指定的一個類(子類)。 [1] 例如,一個面向對象的數據庫可以有一個稱為“client”的類,這個類有兩個子類,分別稱為“company”和“individual”。首先,創(chuàng)立稱為“client”的對象。它包含一個結構和一些過程,這些過程處理數據和從對象之外獲得信息。然后,company和individual對象作為client的子類進行定義。作為一個子類,它們繼承client對象的結構和特征,但是這些特征中的一些可能被屏蔽,或可以增加一些附加特征。例如,company子類可以具有一個特定的折算,而individua1子類卻不具有。如果你需要一個關于客戶的列表,你可以請求client對象進行列表。然而,如果你希望知道客戶的賬目平衡,你就需要從每個包含客戶平衡的子類對象獲得信息。 [1] 對象包含數據和過程,并且當被請求時提供信息。想象一個包含數據的箱子,它有一些按鈕,你可以按這些按鈕來對數據運行過程。方法是,一些對對象進行操作的過程或程序,它們可以使對象根據對象的內部代碼和結構來以特定的形式進行動作。相似地,可以對對象的不同的類進行操作。有一個概念稱為多態(tài)性(poly-morphism)或重載(overloading)。使用多態(tài)性,一組通用的方法可以在很大范圍的類上進行操作。然而,具有相同名字和稱呼的方式卻可能誘發(fā)不同的事情。例如,在文本數據的“next”導致光標跳到下一個工作,而在電子表格的“next”卻導致光標跳到下一個單元。
對象通過發(fā)送消息與另一個對象對話。這些消息在本質上是通過按下對象上的“按鈕”從對象請求過程。在一個網絡環(huán)境,你可以查看和消息總線相連的對象,如圖O-4所示。消息傳遞為對象在一個面向對象的分布式計算環(huán)境進行通信提供了一條有效途徑。消息傳遞是一種存儲再轉發(fā)方式,就象在電子函件系統(tǒng)中使用的那樣。消息被從一臺計算機傳送到另一臺計算機,直到它們抵達目的地。 [1] 所有這些都加到軟件中,它們易于維護,并且在連續(xù)的基礎之上改進,即無需對整個系統(tǒng)進行重新設計。對象是可重用的,使得系統(tǒng)增長時,它易于加入系統(tǒng),這是因為在現有對象中的代碼對創(chuàng)造新的對象是可重用的。 [1] 對象系統(tǒng)是可擴展的,開發(fā)人員增加模塊,而模塊重用內置數據結構,無需重編譯操作系統(tǒng)。易于建造系統(tǒng),這是因為面向對象對設計系統(tǒng)和實現系統(tǒng)提供了一條很自然的途徑。對象可以提供了一種通用接口,因而許多不同應用程序能夠訪問數據。
也有許多不利的方面,包括大量增加了前端設計的時間,減低了性能和技術的不成熟。然而,隨著系統(tǒng)的成長和硬件的不斷強大,這些不利可以減退。這些缺陷,在對象系統(tǒng)可以在遍布分布網絡上的許多不同類型的系統(tǒng)上向用戶提供數據這一事實面前,也會減少。 [1] Objects in Distributed Environments 分布式環(huán)境中的對象對象技術被認為對實現未來的分布式系統(tǒng)是很有生命力的。這樣,系統(tǒng)的復雜性可以通過實現消息傳遞服務(如對象請求代管器)的模型而簡化。對象只是簡單地請求服務,并且其他對象提供這些服務。開發(fā)人員不需要更多地知道對象將在上面通信的系統(tǒng)情況。事實上,對象技術為局部使用、將來擴展到異構分布式環(huán)境、設計應用提供了途徑。 [1] 在這一領域的發(fā)展包括:對象管理組織(OMG)的公用對象請求代管器體系結構(CORBA)是一種規(guī)范,它的設計是為對象產生和接收請求提供了途徑。Microsoft的對象鏈接和嵌入(OLE),為在單一臺式系統(tǒng)或一個網絡上的應用程序共享數據提供了一條途徑。IBM的系統(tǒng)對象模型(SOM)和分布式系統(tǒng)對象模型(DSOM)提供了低級對象語言OpenDoc是一種為共享文本、圖形和多媒體對象,而由Apple、Borland、IBM、Novel1和WordPerfect等公司開發(fā)的開發(fā)環(huán)境。 [1] 相關條目:Cario;Common Object Model 公用對象模型;Common Object Request Broker Architecture 公用對象請求代管器體系結構;Compound Documents 復合文檔;Object Broker,DEC DEC的Object Broker;Object Linking and Embedding對象鏈接和嵌入;Object Management Architecture對象管理體系結構;Object-Oriented Interfaces and Operating Systems面向對象的接口和操作系統(tǒng);Object Request Broker 對象請求代管器;Workplace OS。