利用uml類圖設(shè)計(jì)java應(yīng)用程序詳解

利用uml類圖設(shè)計(jì)java應(yīng)用程序詳解

ID:16999545

大小:244.77 KB

頁數(shù):22頁

時(shí)間:2018-08-26

利用uml類圖設(shè)計(jì)java應(yīng)用程序詳解_第1頁
利用uml類圖設(shè)計(jì)java應(yīng)用程序詳解_第2頁
利用uml類圖設(shè)計(jì)java應(yīng)用程序詳解_第3頁
利用uml類圖設(shè)計(jì)java應(yīng)用程序詳解_第4頁
利用uml類圖設(shè)計(jì)java應(yīng)用程序詳解_第5頁
資源描述:

《利用uml類圖設(shè)計(jì)java應(yīng)用程序詳解》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、利用UML類圖設(shè)計(jì)Java應(yīng)用程序詳解(一)來源:ZDNetChina??作者:龔赤兵UML已成為面向?qū)ο笤O(shè)計(jì)的標(biāo)準(zhǔn)圖形化工具,在UML定義的各種圖中,本文只涉及類圖。Java應(yīng)用程序由許多類所構(gòu)成,類圖的設(shè)計(jì)與實(shí)現(xiàn),是Java實(shí)現(xiàn)面向?qū)ο髴?yīng)用程序的核心。本文通過一個(gè)具體的應(yīng)用程序的設(shè)計(jì)與實(shí)現(xiàn)過程,詳細(xì)說明了利用UML類圖設(shè)計(jì)Java應(yīng)用程序,使得開發(fā)過程標(biāo)準(zhǔn)化、可視化,代碼編程簡單化?! ≡陬悎D中,類被描述為帶有三層的盒子。  頂層為類名,一般用加粗字體表示。如果類是抽象的,其名稱用斜體表示;如果類是接口,則在類名上方標(biāo)注<>?! ≈虚g層包含類的屬性(或變量),底層包含

2、類的方法。與類名相似,如果方法是抽象的,那么它的名稱也用斜體表示。  我們要設(shè)計(jì)的應(yīng)用程序CDrawApp應(yīng)用程序在基于字符的網(wǎng)格上畫點(diǎn)、框和文本串,該應(yīng)用程序涉及到Java面向?qū)ο蟮脑S多概念與應(yīng)用方法,非常系統(tǒng)、全面,在您仔細(xì)研讀后,定能迅速掌握UML類圖,并將其應(yīng)用到實(shí)際的Java應(yīng)用程序開發(fā)過程中。為減少代碼長度,讓程序簡單易懂,這里使用Java控制臺(tái)窗口顯示程序運(yùn)行結(jié)果。該程序總共由10個(gè)大類組成,以下分別介紹?! ∫弧oint類  在CDrawApp程序中定義的第一個(gè)類是Point類,該類用于通過x和y坐標(biāo)在網(wǎng)格上標(biāo)識(shí)一點(diǎn)。其類圖設(shè)計(jì)為:  在該類中,有2個(gè)成員變量x和y,類圖中,

3、“-”表示變量或方法為private,“+”表示public,“#”則表示protected。該類定義了三個(gè)不同的構(gòu)造函數(shù),這是重載(overload)的例子。接著該類設(shè)計(jì)了7個(gè)訪問方法。getX()和getY()方法分別返回一點(diǎn)的x和y坐標(biāo)。SetX()和setY()方法根據(jù)參數(shù)xValue和yValue的值設(shè)置這些坐標(biāo)的值。兩個(gè)add()方法通過被訪問點(diǎn)的坐標(biāo)加上一個(gè)值來建立一個(gè)新的Point對(duì)象。New運(yùn)算符建立類的新實(shí)例。它后面緊跟著初始化新生成實(shí)例的構(gòu)造函數(shù)。toString()  方法返回類String的一個(gè)對(duì)象,該對(duì)象用一個(gè)有序?qū)砻枋鲆粋€(gè)點(diǎn)?! ∫罁?jù)設(shè)計(jì)的類圖,其Java實(shí)現(xiàn)代

4、碼為:  //Point.javapublicclassPoint{//Variabledeclarationsprivateintx;privateinty;//MethoddeclarationspublicPoint(){x=0;y=0;}publicPoint(intxValue,intyValue){x=xValue;y=yValue;}publicPoint(Pointp){x=p.getX();y=p.getY();}publicintgetX(){returnx;}publicintgetY(){returny;}publicvoidsetX(intxValue){x=xVal

5、ue;}publicvoidsetY(intyValue){y=yValue;}publicPointadd(Pointp){returnnewPoint(x+p.getX(),y+getY());}publicPointadd(inti,intj){returnnewPoint(x+i,y+j);}publicStringtoString(){returnnewString("("+String.valueOf(x)+","+String.valueOf(y)+")");}}  二、CGrid類  CGrid類用于定義指定大小的字符網(wǎng)格。它提供基本方法集,通過加入到這些方法中的其它類來得到擴(kuò)

6、展。該類的類圖為:  CGrid類聲明3個(gè)變量:width、depth和grid[][]。width和depth變量用于指定grid[][]的水平和垂直尺寸,grid[][]是保存網(wǎng)格字符的字符數(shù)組的數(shù)組。CGrid中的變量聲明為protected,這就規(guī)定了它們只能在聲明它們的包中和CGrid的任何子類中訪問?! Grid類只有一個(gè)單一構(gòu)造函數(shù),它設(shè)置width和depth的值,分配grid[][]數(shù)組,然后調(diào)用blankGrid()以空格為grid[][]賦值。  CGrid有4種訪問方法。blankGrid()方法只是簡單地用空格字符來調(diào)用  fillGrid()。fillGrid()

7、方法把grid[][]的每個(gè)元素都設(shè)置為ch參數(shù)。GetCharFrom()方法用于找出網(wǎng)格中給定位置的字符。SetCharAt()用于把網(wǎng)格中一點(diǎn)設(shè)置成特定字符?! ≡贕etCharFrom()和SetCharAt()方法中使用Point類來定義它們的參數(shù),這是類與類之間關(guān)聯(lián)的例子,我們稍候討論?! 「鶕?jù)以上類圖,CGrid類的原代碼為:  //CGrid.javapublicclassCGri

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。