面向對象設計方法
『壹』 面向對象設計方法
面象對象程序設計是一種圍繞真實世界的概念來組織模型的程序設計方法,它內採用對象來容描述問題空間的實體。對象是包含現實世界物體特徵的抽象實體,它反映了系統為之保存信息和與它交換的能力。對象是一些屬性及服務的封裝體,在程序設計領域,可以用「對象=數據+作用於這些數據上的操作」這一公式來表示。
『貳』 面向對象的程序設計方法有哪些優點
面向對象思想設計的結構,可讀性高,由於繼承的存在,即使改變需求,版那麼維護也只是在局部權模塊,所以維護起來是非常方便和較低成本的。
2、質量高
在設計時,可重用現有的,在以前的項目的領域中已被測試過的類使系統滿足業務需求並具有較高的質量。
3、效率高
在軟體開發時,根據設計的需要對現實世界的事物進行抽象,產生類。使用這樣的方法解決問題,接近於日常生活和自
『叄』 什麼是面向對象的程序設計方法
面向對象:打個比方,就是你做一次菜,過程是起火,放油,炒菜,起鍋,吃飯,這就是面向對象內,效率高 面向過容程,就是每一個細節:比如你要先把或開到合適的位置.然後還要洗菜 ,等油熱了,才能開始炒菜,然後調料,...,起鍋,到碗里,吃飯.... 適合寫高質量代碼 C語言是面向過程,C++ , java 則都是面向對象 C是中級語言,面向對象是高級語言才有的本事,匯編 ,機器碼.2進制都是低級語言
『肆』 面向對象分析與設計面向對象設計包括哪些內容
一、總述
面向對象分析的輸入是用戶的功能需求,輸出是簡單的、理性化的分析模型,此階段的工作更多側重於如何理解軟體的功能需求;
面向對象設計的輸入是面向對象分析的結果,蔬菜水果最終的、細化後的設計模型,此階段的工作更多側重於如何得到一個合適的、完整的解決方案。
二、主要區別
(1) 在側重點上,面向對象分析側重於理解問題,描述軟體要做什麼,而面向對象設計側重於理解解決方案,描述軟體要如何做。
(2) 面向對象分析一般只考慮理想餓設計,不關心技術和實現層面的細節,而面向對象設計需要得到更具體、更詳盡,更接近於真實的代碼的設計方案。
(3) 在設計結果的描方式上,面向對象分析階段側重於描述對象的行為,而面向對象設計階段側重於描述對象的屬性和方法。
(4) 面向對象分析只關注功能性需求,而面向對象設計既關注功能性需求,也關注非功能性需求。
(5) 面向對象分析產生的系統模型通常規模較小,而面向對象設計產生的系統模型規模較大,內容也比較詳盡、完整。
三、分析設計工具(RationalRose + UML)
1、需求分析階段
常藉助於「用例圖」、「順序圖」對功能模型進行建模;
用例描述,一般包括:用例名稱,系統范圍,用戶目標,前置條件,執行過程,擴展情況,後置條件。
順序圖著眼於整個系統。
2、面向對象分析階段(包含需求分析階段的用例建模)
常藉助於「類圖、對象圖」,「順序圖、協作圖」,「狀態圖」進行靜態模型建模和動態模型建模。
這里的類圖主要指通過用例分析得到的實體類、控制類和邊界類。
順序圖也著眼於各個分析類對象間的協作。
3、面向對象設計階段
常藉助於「類圖」,「順序圖、協作圖」,「狀態圖」來細化各個類以及對象間的協作、關系的可見性;
這里的類圖,要具體到屬性、方法,類之間的關系依賴(繼承、組合、聚合)
這里的順序圖要具體到各個類的實例之間的消息傳遞、函數調用。
面向對象設計階段常藉助一些設計模式達到軟體的可擴展行,應對軟體的可預測到的變化。
『伍』 (46) 面向對象的設計方法與傳統的的面向過程的方法有本質不同,它的基本原理是______。 A. 模擬現實世界中
(46)[答案]C
[考點]軟體來工程基礎自
[評析]
我們舉個例,
從各種語言的結構體類型出發,我們知道,結構體中可以定義很多變數,對每個變數執行相同的操作,挨個挨個寫出,很麻煩。假設該結構體有如下變數:
草魚、田魚、鯽魚……
它們都在一口池塘里,現在執行:它們都上來
傳統的程序設計是:
草魚上來
田魚上來
鯽魚上來
……
一條一條都寫出,是不是很麻煩?
改進一下,我們用個循環:
n等於從1到10(假設共有10種魚)
第n種魚上來
還是很麻煩,現實中我們很易想到用"面向對象的思想",池塘里所有的魚都是一個結構體變數,名為魚,執行:
魚上來
意思即所有的魚都上來。
現特定於面象對象語言中的類,魚,就可以看作為一類。
這就屬於 C 項:
使用現實世界的概念抽象地思考問題從而自然地解決問題
這樣羅嗦的解釋望大家別暈,旨在幫助部分人的確難想通的,為應試,你能背下答案也行。
『陸』 怎樣進行面向對象的程序設計
面向對象程序設計的基本概念:面向對象, 概括地說, 就是把問題抽象為對象, 設置屬性(數據) , 指定事件或處理方式(代碼) 來達到目的, 強調從問題域的概念到軟體程序和界面的直接映射。面向對象程序設計中的概念主要包括:對象、類、數據抽象、繼承、動態綁定、數據封裝、多態性、消息傳遞。通過這些概念面向對象的思想得到了具體的體現。
面向對象程序設計的基本特徵1)對象:對象是運行期的基本實體,它是一個封裝了數據和操作這些數據的代碼的邏輯實體。2)類:類是具有相同類型的對象的抽象。一個對象所包含的所有數據和代碼可以通過類來構造。3)封裝性:封裝是一種信息隱蔽技術,它體現於類的說明,是對象的重要特性。封裝使數據和加工該數據的方法(函數)封裝為一個整體,以實現獨立性很強的模塊,使得用戶只能見到對象的外特性(對象能接受哪些消息,具有那些處理能力),而對象的內特性(保存內部狀態的私有數據和實現加工能力的演算法)對用戶是隱蔽的。封裝的目的在於把對象的設計者和對象者的使用分開,使用者不必知曉行為實現的細節,只須用設計者提供的消息來訪問該對象。4)繼承性:繼承性是子類自動共享父類之間數據和方法的機制。它由類的派生功能體現。一個類直接繼承其它類的全部描述,同時可修改和擴充。繼承具有傳遞性。繼承分為單繼承(一個子類只有一父類)和多重繼承(一個類有多個父類)。類的對象是各自封閉的,如果沒繼承性機制,則類對象中數據、方法就會出現大量重復。繼承不僅支持系統的可重用性,而且還促進系統的可擴充性。5)多態性:對象根據所接收的消息而做出動作。同一消息為不同的對象接受時可產生完全不同的行動,這種現象稱為多態性。利用多態性用戶可發送一個通用的信息,而將所有的實現細節都留給接受消息的對象自行決定,如是,同一消息即可調用不同的方法。例如:Print消息被發送給一圖或表時調用的列印方法與將同樣的Print消息發送給一正文文件而調用的列印方法會完全不同。多態性的實現受到繼承性的支持,利用類繼承的層次關系,把具有通用功能的協議存放在類層次中盡可能高的地方,而將實現這一功能的不同方法置於較低層次,這樣,在這些低層次上生成的對象就能給通用消息以不同的響應。在OOPL中可通過在派生類中重定義基類函數(定義為重載函數或虛函數)來實現多態性。6)動態綁定
綁定指的是將一個過程調用與相應代碼鏈接起來的行為。動態綁定是指與給定的過程調用相關聯的代碼只有在運行期才可知的一種綁定,它是多態實現的具體形式。7)消息傳遞:對象之間需要相互溝通,溝通的途徑就是對象之間收發信息。消息內容包括接收消息的對象的標識,需要調用的函數的標識,以及必要的信息。消息傳遞的概念使得對現實世界的描述更容易。
面向對象語言
『柒』 面向對象程序設計有哪些基本特徵
【回答】
面向對象程序設計有4個主要特點,分別是:抽象、封裝、繼承、多態。以下是具體解釋;
一、抽象和封裝
類和對象體現了抽象和封裝
抽象就是解釋類與對象之間關系的詞。類與對象之間的關系就是抽象的關系。一句話來說明:類是對象的抽象,而對象則是類得特例,即類的具體表現形式。
封裝兩個方面的含義:一是將有關數據和操作代碼封裝在對象當中,形成一個基本單位,各個對象之間相對獨立互不幹擾。二是將對象中某些屬性和操作私有化,已達到數據和操作信息隱蔽,有利於數據安全,防止無關人員修改。把一部分或全部屬性和部分功能(函數)對外界屏蔽,就是從外界(類的大括弧之外)看不到,不可知,這就是封裝的意義。
二、繼承
面向對象的繼承是為了軟體重用,簡單理解就是代碼復用,把重復使用的代碼精簡掉的一種手段。如何精簡,當一個類中已經有了相應的屬性和操作的代碼,而另一個類當中也需要寫重復的代碼,那麼就用繼承方法,把前面的類當成父類,後面的類當成子類,子類繼承父類,理所當然。就用一個關鍵字extends就完成了代碼的復用。
三、多態
沒有繼承就沒有多態,繼承是多態的前提。雖然繼承自同一父類,但是相應的操作卻各不相同,這叫多態。由繼承而產生的不同的派生類,其對象對同一消息會做出不同的響應。
【拓展回答】
一、面向對象程序設計概念
面向對象程序設計(Object Oriented Programming)作為一種新方法,其本質是以建立模型體現出來的抽象思維過程和面向對象的方法。模型是用來反映現實世界中事物特徵的。任何一個模型都不可能反映客觀事物的一切具體特徵,只能對事物特徵和變化規律的一種抽象,且在它所涉及的范圍內更普遍、更集中、更深刻地描述客體的特徵。通過建立模型而達到的抽象是人們對客體認識的深化。
類當中有兩個方面,一是封裝屬性,二是封裝函數。在自己聲明的類當中要既有屬性又有函數,這就是類。
其實結構體的聲明當中有很多不同數據類型的成員,在一個結構體當中,這就是對屬性的封裝,但是結構體與類相比較,還缺少了一個重要的環節,結構體當中只有屬性,只封裝了屬性,但沒有封裝相應的操作,也就是沒有封裝操作成員屬性的函數。
在結構體中聲明一個結構體就相當於我們設計了一個類,定義一個結構體就相當於我們定義了一個對象,定義給兩個結構體,相當於我們定義了兩個對象。初始化結構體,相當於對象的初始化。
客觀世界中任何一個事物都可以看成一個對象(Object),任何一個對象都有兩個要素:一個是靜態特徵,這種靜態特徵稱為屬性。 一個是動態特徵,這種動態特徵稱為行為(或功能)。
二、面向對象程序設計架構特點
面向對象設計方法以對象為基礎,利用特定的軟體工具直接完成從對象客體的描述到軟體結構之間的轉換。這是面向對象設計方法最主要的特點和成就。面向對象設計方法的應用解決了傳統結構化開發方法中客觀世界描述工具與軟體結構的不一致性問題,縮短了開發周期,解決了從分析和設計到軟體模塊結構之間多次轉換映射的繁雜過程,是一種很有發展前途的系統開發方法。
但是同原型方法一樣, 面向對象設計方法需要一定的軟體基礎支持才可以應用,另外在大型的MIS開發中如果不經自頂向下的整體劃分,而是一開始就自底向上的採用面向對象設計方法開發系統,同樣也會造成系統結構不合理、各部分關系失調等問題。所以面向對象設計方法和結構化方法仍是兩種在系統開發領域相互依存的、不可替代的方法。
【參考資料】
網路——面向對象程序設計
面向對象程序設計的特點
『捌』 關於面向對象的程序設計方法,下列說法正確的是
答案:D
A:封裝性是保證軟體部件具有優良的模塊性的基礎。包含兩個含義專:
1.把對象的全部屬性屬和全部服務結合在一起,形一個不可分割的獨立單位(即對象)。
2.信息隱蔽,即盡可能隱蔽對象的內部細節,對外形成一個邊界〔或者說形成一道屏障〕,只保留有限的對外介面使之與外部發生聯系。
B:多態性指的是發送消息給某個對象,讓該對象自行決定響應何種行為。 通過將子類對象引用賦值給超類對象引用變數來實現動態方法調用
剩下兩個應該不用解釋了
『玖』 如何用面向對象設計一個程序,經典推薦
有許多 OOD 方法論流派,後來逐漸形成一致意見,出現了許多穩定、成熟的類設計原則、模式、回方法和技答巧,這些在 Larman 的書里都有反映,例如其中一組最基礎的類設計、規劃原則(和模式)叫 GRASP,初學者應該先從 GRASP 原則學起。
『拾』 面向對象的設計方法
本次系統建設與開發嚴格按照軟體工程的思想和技術要求,進行了項目的需求分析、系統的設計、編碼、測試和維護。其中,利用計算機輔助設計工具(CASE)進行系統的設計和分析,利用統一建模語言(UML)進行了數據建模,尤其引入了面向對象的空間數據管理模型——GeoDatabase,對遙感綜合調查所涉及的地理空間實體進行了對象化包裝,定義了符合空間對象特點的數據結構和方法,實現了用戶界面中的地理實體與資料庫中實體的屬性和空間數據之間的有機聯系,在此基礎上構造了提交查詢所需的資料庫結構。