軟件設計師UML知識點:第二章Hello

軟件設計師UML知識點:第二章Hello,第1張

軟件設計師UML知識點:第二章Hello,第2張

記得在學習C語言的時候,教科書上的第一個程序就是叫Hello world,一個在屏幕上簡單地打印出“Hello world!”語句的例子。在系統的學習UML語言之前我們來看一個簡單的例子,讓大家有一個系統的認識。

在java中一個在瀏覽器中顯示“Hello World!”的Applet代碼如下:
import java.awt.Graphics;
class HelloWorld extends java.applet.Applet{
public void paint( Graphics g ){
g.drawString("Hello World!", 10,10 );
}
}
代碼的第一行:
import java.awt.Graphics;
使得程序可以使用Graphics類。前綴 java.awt指出了類Graphics所在的包。
第二行代碼:
class HelloWorld extends java.applet.Applet{
從Applet類派生出新的類HelloWorld,Applet類在java.applet包中。
接下來的三行代碼:
public void paint( Graphics g ){
g.drawString("Hello World!", 10,10 );
}
聲明了類HelloWorld的方法paint,在他的實現中調用了另一個方法drawString來輸出“Hello World!”。
我們可以很直接地爲這個程序用UML建立模型。如圖2-1。


圖2-1表達了最基本的HelloWorld模型,但它還有很多東西沒有表示出來。在我們的程序中Applet類和Graphics類的使用是不相同的。Applet用作HelloWorld類的父類,而Graphics類用在方法paint的實現中。在UML模型中可以將這些關系表示爲圖2-2:

在圖2-2的類關系圖中,我們用簡單的矩行圖標表示類Applet和Graphics類,沒有將它們的屬性和方法顯露出來是爲了簡化。圖中的空心箭頭表示HelloWorld類是Applet類的子類,代表一般化。HelloWorld和Graphics之間的虛線箭頭表示依賴關系,表示HelloWorld類使用了Graphics類。
到這裡或許你認爲已結束了,其實不然,如果認真研究java庫中的Applet類和Graphics類會發現他們都是一個龐大的繼承關系中的一部分。追蹤Applet的實現可以得到另外一個類圖

位律師廻複

生活常識_百科知識_各類知識大全»軟件設計師UML知識點:第二章Hello

0條評論

    發表評論

    提供最優質的資源集郃

    立即查看了解詳情