記得在學(xué)習(xí)C語言的時候,教科書上的第一個程序就是叫Hello world,一個在屏幕上簡單地打印出“Hello world!”語句的例子。在系統(tǒng)的學(xué)習(xí)UML語言之前我們來看一個簡單的例子,讓大家有一個系統(tǒng)的認(rèn)識。
在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,在他的實現(xiàn)中調(diào)用了另一個方法drawString來輸出“Hello World!”。
我們可以很直接地為這個程序用UML建立模型。如圖2-1。
圖2-1表達(dá)了最基本的HelloWorld模型,但它還有很多東西沒有表示出來。在我們的程序中Applet類和Graphics類的使用是不相同的。Applet用作HelloWorld類的父類,而Graphics類用在方法paint的實現(xiàn)中。在UML模型中可以將這些關(guān)系表示為圖2-2:
在圖2-2的類關(guān)系圖中,我們用簡單的矩行圖標(biāo)表示類Applet和Graphics類,沒有將它們的屬性和方法顯露出來是為了簡化。圖中的空心箭頭表示HelloWorld類是Applet類的子類,代表一般化。HelloWorld和Graphics之間的虛線箭頭表示依賴關(guān)系,表示HelloWorld類使用了Graphics類。
到這里或許你認(rèn)為已結(jié)束了,其實不然,如果認(rèn)真研究java庫中的Applet類和Graphics類會發(fā)現(xiàn)他們都是一個龐大的繼承關(guān)系中的一部分。追蹤Applet的實現(xiàn)可以得到另外一個類圖
在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,在他的實現(xiàn)中調(diào)用了另一個方法drawString來輸出“Hello World!”。
我們可以很直接地為這個程序用UML建立模型。如圖2-1。
圖2-1表達(dá)了最基本的HelloWorld模型,但它還有很多東西沒有表示出來。在我們的程序中Applet類和Graphics類的使用是不相同的。Applet用作HelloWorld類的父類,而Graphics類用在方法paint的實現(xiàn)中。在UML模型中可以將這些關(guān)系表示為圖2-2:
在圖2-2的類關(guān)系圖中,我們用簡單的矩行圖標(biāo)表示類Applet和Graphics類,沒有將它們的屬性和方法顯露出來是為了簡化。圖中的空心箭頭表示HelloWorld類是Applet類的子類,代表一般化。HelloWorld和Graphics之間的虛線箭頭表示依賴關(guān)系,表示HelloWorld類使用了Graphics類。
到這里或許你認(rèn)為已結(jié)束了,其實不然,如果認(rèn)真研究java庫中的Applet類和Graphics類會發(fā)現(xiàn)他們都是一個龐大的繼承關(guān)系中的一部分。追蹤Applet的實現(xiàn)可以得到另外一個類圖