當前位置:成語大全網 - 漢語詞典 - 什麽是面向對象的消息?

什麽是面向對象的消息?

什麽是面向對象的消息?消息由哪些部分組成?

軟件對象通過相互傳遞消息來進行交互和通信。消息由三部分組成:

1.接受消息的對象

2.接收對象要采用的方法

3.方法所需的參數

封裝結合了壹個對象的所有組件。

子類是定義為另壹個類的擴展或修改的類。

繼承意味著子類使用父類中定義的方法和變量,就好像它們屬於子類本身壹樣。

n方法的覆蓋範圍

覆蓋使子類能夠重新定義父類中的現有方法,從而反映子類自己的行為。

重載意味著同壹個類中至少有兩個方法同名但參數不同。

在面向對象編程語言中,消息意味著什麽?

Windows系統是壹個消息驅動的操作系統。什麽是消息?很難下定義。我們從不同的方面來解釋壹下:

1.消息的組成:壹個消息由壹個消息名(UINT)和兩個參數(WPARAM,LPARAM)組成。當用戶進行輸入或者窗口狀態發生變化時,系統會向某個窗口發送消息。比如菜單翻完後會發送壹個WM_MAND消息,WPRAM的高字(HIWORD(wParam))是命令的ID號,是菜單的菜單ID。當然,用戶也可以定義自己的消息名稱,也可以使用自定義消息來發送通知和傳輸數據。

2.誰將接收消息:消息必須由窗口接收。在進程窗口(WNDPROC)中,可以對消息進行分析,並對感興趣的消息進行處理。例如,如果要處理菜單選擇,可以定義代碼來處理WM_MAND,如果要在窗口中輸出圖形,就必須處理WM_PAINT。

3.未處理的消息去了哪裏?M$為窗口寫了壹個默認的窗口程序,它將負責處理那些妳不處理的消息。正是因為有了這個默認的窗口進程,我們才可以使用Windows窗口進行開發,而不用太在意窗口中各種消息的處理。比如拖動窗口的時候,會有很多消息發出,我們都可以忽略,讓系統自己處理。

4.窗口句柄:說到消息,不能不說窗口句柄。系統通過窗口句柄在整個系統中唯壹標識壹個窗口。發送消息時,必須指定壹個窗口句柄,以指示該窗口收到了消息。而且每個窗口都會有自己的窗口進程,所以用戶的輸入都會得到正確的處理。例如,有兩個窗口* * *帶有壹個窗口過程代碼。當妳在壹號窗口按下鼠標,消息會通過壹號窗口的句柄發送到壹號窗口而不是二號窗口。

5.示例:下面是壹段偽代碼,演示了如何在窗口進程中處理消息。

LONG yourWndProc(HWND hWnd,UINT uMessageType,WPARAM wP,LPARAM)

{

開關(uMessageType)

{使用SWITCH語句分隔各種消息。

案例(WM_PAINT):

做妳的窗口(...);窗口需要重繪時的輸出。

打破;

case(WM_LBUTTONDOWN):

做妳的工作...);按下鼠標左鍵時的句柄。

打破;

默認值:

callDefaultWndProc(...);讓系統自己處理其他案件。

打破;

}

}

找了這麽壹段話給妳看看,希望對妳有幫助。其實消息並不是面向對象編程語言裏的東西,而是WINDOWS系統裏的東西,而且我只見過VC++裏這種消息機制的編程,其他面向對象編程語言都不是這樣!

面向對象編程什麽是對象和消息?

面向對象面向對象是壹種新的編程方法,或者說是壹種新的編程範式。其基本思想是用對象、類、繼承、封裝、消息等基本概念來編程。它從現實世界中的客觀事物(即對象)構造壹個軟件系統,並且...

面向對象是什麽意思?

人類解決問題的方式就是分而治之。所以不管是面向對象還是面向過程,本質上都是為了分解問題。不同的是,面向過程的問題被分解成壹系列的步驟,這些步驟被再次分解,直到妳可以輕松實現,相當於算法分解。另壹方面,面向對象將問題分解成壹系列相互協作的對象,然後再進行分解。系統中的每個對象代表壹個與問題或實現相關的實體,與問題相關的是問題的組成部分,與實現相關的是具體實現中使用的輔助實體,與問題本身沒有直接聯系。系統中的所有對象相互配合,實現整個系統的功能。系統中的所有對象及其關系構成了系統的組件結構。壹般來說,抽象、封裝、模塊化和層次結構對對象進行描述和分類。通過結合抽象、封裝、繼承、多態等元素,可以得到類的層次結構。類層次和組合層次被稱為面向對象系統的體系結構。所以面向對象主要是建立對象結構和類層次,面向過程是建立“算法”(進程)層次。面向對象的底層需要面向過程,但是對於高層的地方,不能用面向過程,所以在抽象層面上面向對象比面向過程處於更高的層次。

比如汽車制造,可以從兩個方面考慮:1。我們可以認為汽車制造是壹系列工序的產物,每個工序都有子工序,給定合適的材料,經過壹系列步驟的加工,最終生產出壹輛汽車。2.我們也可以認為,汽車制造是由不同的工廠合作完成的,每個工廠都有自己的工人和機器,每個工人、每個機器、每個工廠都有自己的職責,最終完成汽車制造。通過觀察,我們會發現有壹些工人有很大的相似性(比如都穿壹樣的工作服,生產壹樣的零件)。這時候我們會建立壹個類來描述它們的相似性(抽象),定義壹個接口來規定它們的職責(封裝);通過觀察,我們還發現,即使是不同的階層(比如生產不同零件的工人)也有壹些相似之處(比如都是在同壹個工廠生產零件),但相似的地方也有差異(不同種類的工人生產不同的零件)。這時,我們用基類(繼承)來描述相似性,用虛函數(多態性)來描述相似性中的差異。通過以上分析,我們建立了組件和類的層次結構,並用面向對象的方法描述了汽車制造。

面向對象語言特性中的“消息傳遞機制”是什麽意思?。。。

壹個消息是壹個對象調用另壹個對象的成員函數(C++)或方法(java)。這個術語是純面向對象語言使用的。因為不同的面向對象語言有不同的面向對象實現,所以出現了壹些方言,即不同的語言對同壹個概念有不同的稱呼。

什麽是消息(在面向對象的方法中),名詞解釋?

對象之間的交互是由消息產生的。壹個對象發送壹條消息,請求另壹個對象執行壹些處理或回答壹些信息。

什麽是面向對象,什麽是面向過程,什麽是面向對象?

面向對象技術是壹種基於對象的編程技術,由事件或消息驅動。它是抽象的、封裝的、繼承的和多態的。

面向對象和面向過程的編程有如下不同:

(1)面向過程的編程方法用函數(或過程)來描述對數據的操作,但把函數和它所操作的數據分開;面向對象的編程方法封裝了數據和對數據的操作,並把它們作為壹個整體來對待。功能和數據是分開的嗎?

(2)面向過程的編程方法以功能為中心設計功能模塊,維護困難;而面向對象的編程方法是以數據為中心來描述系統的,數據比函數更穩定,更容易維護。

(3)面向過程的程序的控制流是由程序中預定的順序決定的;面向對象程序的控制流由運行時各種事件的實際發生觸發,不再由預定的順序決定,更符合實際需要。預定序列;由運行時各種事件的實際發生觸發。

(4)面向對象的編程方法可以使用框架產品(如MFC、微軟基礎類)進行編程。面向對象和面向過程的根本區別在於,封裝之後,面向對象提供了面向過程所沒有的各種特性,其中最重要的就是繼承和多態。

在C++中,什麽是消息,什麽是類,什麽是對象?

例如:

階級→蘋果

對象→妳手裏的蘋果

至於消息。。。好像是軟件開發用的。。。它不屬於任何語言。

這似乎是壹種反應機制。操作生成消息,系統通過消息隊列壹步壹步地執行它們。。。(好像是這樣~)

通俗地說,“面向對象”是什麽意思?

面向對象實際上是現實世界模型的自然延伸。現實世界中的任何實體都可以看作是壹個物體。對象通過消息相互交互。另外,現實世界中的任何實體都可以屬於某壹類事物,任何對象都是某壹類事物的實例。如果說傳統的面向過程的編程語言是以過程為中心、算法驅動的,那麽面向對象的編程語言就是以對象為中心、消息驅動的。用公式表示,程序化編程語言是:程序=算法+數據;面向對象的編程語言是:程序=對象+消息。所有面向對象的編程語言都支持三個概念:封裝、多態和繼承,Java也不例外。現實世界中的物體都有屬性和行為,它們被映射到計算機程序中。屬性代表對象的數據,行為代表對象的方法(它們的作用是處理數據或者與外界交互)。所謂封裝,就是用壹個自治的框架把對象的數據和方法連接起來,形成壹個整體。可以說,對象是支撐包裝的手段,是包裝的基本單位。Java語言有很強的封裝性,因為Java沒有全局變量,也沒有主函數,Java中的大部分成員都是對象,只有簡單的數值型、字符型和布爾型除外。對於這些類型,Java也提供了相應的對象類型來與其他對象進行互操作。多態性是多種表現形式,具體來說,可以用“壹個外部接口,多個內部實現方法”來表示。例如,計算機中的堆棧可以存儲各種格式的數據,包括整數、浮點或字符。無論存儲哪種數據,棧的算法實現都是壹樣的。對於不同的數據類型,程序員不必手動選擇,只需使用統壹的接口名稱,系統可以自動選擇。運算符重載壹直被認為是多態機制的極好體現,但Java最終取消了它,因為它會使程序難以理解。繼承意味著壹個對象直接使用另壹個對象的屬性和方法。其實我們遇到的很多實體都有傳承的意義。例如,如果壹輛汽車被視為壹個實體,它可以被分為多個子實體,如卡車和公共汽車。這些子實體都具有汽車的特征,所以汽車是它們的“父親”,這些子實體是它們的“孩子”。Java為用戶提供了壹系列的類。Java類具有層次結構,子類可以繼承父類的屬性和方法。與其他面向對象的編程語言不同,Java只支持單壹繼承。

對面向對象軟件開發中對象事件(消息)、函數、過程、屬性的理解,以及它們的區別?

面向對象是當前計算機界的熱點,是90年代軟件開發方法的主流。面向對象的概念和應用已經超越了編程和軟件開發的範疇,擴展到了更廣的範圍。如數據庫系統、交互界面、應用結構、應用平臺、分布式系統、網絡管理結構、CAD技術、人工智能等領域。

說到面向對象,這方面的文章很多。然而,很少有明確給出或解釋的對象定義——至少我還沒找到。起初,“面向對象”是指程序設計中使用的封裝、繼承、抽象等設計方法。但是,這個定義顯然已經不適合現在的情況了。面向對象的思想已經涉及到軟件開發的各個方面。比如我們常說的OOA(面向對象分析)、OOD(面向對象設計)、OOP(面向對象編程)。很多關於面向對象的文章都只是關於面向對象開發中需要註意的問題或者采用的比較好的設計方法。只有讀完這些文章,妳才能真正理解什麽是對象,什麽是面向對象,妳才能最大程度的讓自己受益。對於初學者,甚至從事相關工作多年的人來說,恐怕概念都會比較模糊。

面向對象是當前計算機行業的焦點,是90年代軟件開發方法的主流。面向對象的概念和應用已經超越了編程和軟件開發的範疇,擴展到了更廣的範圍。如數據庫系統、交互界面、應用結構、應用平臺、分布式系統、網絡管理結構、CAD技術、人工智能等領域。

第壹,傳統發展方式存在的問題

1.軟件可重用性差

可重用性是指同壹事物不經修改或稍加修改即可多次重用的性質。軟件可重用性是軟件工程追求的目標之壹。

2.軟件可維護性差

軟件工程強調軟件的可維護性和文檔的重要性,規定最終的軟件產品應該由完整的、壹致的配置組件組成。在軟件開發過程中,始終強調軟件的可讀性、可修改性和可測試性是軟件的壹個重要質量指標。實踐證明,用傳統方法開發的軟件成本和費用仍然很高,這是由於可修改性差,維護困難,導致可維護性差。

3.開發的軟件不能滿足用戶的需求。

用傳統的結構化方法開發大型軟件系統,涉及到各個領域的知識。在開發具有模糊或動態需求的系統時,開發的軟件系統往往不能真正滿足用戶的需求。

用結構化方法開發的軟件穩定性、可修改性和可重用性較差,因為結構化方法的本質是功能分解。從代表目標系統整體功能的單個流程開始,將復雜的流程從上到下不斷分解成子流程,這樣壹層壹層分解,直到只剩下幾個子流程,然後用相應的工具描述最底層的流程。因此,結構化方法是圍繞實現處理功能的“過程”來構建系統的。但是用戶需求的改變大部分是針對功能的,所以這種改變對於基於流程的設計來說是災難性的。用這種方法設計的系統結構往往是不穩定的,用戶需求的變化往往會引起系統結構的巨大變化,所以實現這種變化需要大量的資金。

二、面向對象的基本概念

(1)對象。

對象是人們想要研究的任何東西,從最簡單的整數到復雜的飛機。它不僅可以表示具體的事物,也可以表示抽象的規則、計劃或事件。

(2)對象的狀態和行為。

對象有壹個狀態,對象用數據值描述它的狀態。

對象也有改變對象狀態的操作,對象及其操作就是對象的行為。

對象實現了數據和操作的結合,使數據和操作封裝在對象的統壹體中。

(3)階級。

具有相同或相似屬性的對象的抽象是壹個類。所以對象的抽象就是類,類的具體化就是對象。也可以說壹個類的實例是......