1. 程式人生 > >第二天 HellowWorld

第二天 HellowWorld

 必須承認,邊練邊學是效果最好的。那麼我們就先開始一個最簡單的Hello World 。但千萬不要小看了這個程式。真正明白這個程式的所有知識點,是件不那麼容易的事情。程式碼如下:

import javax.microedition.lcdui.*;

import javax.microedition.midlet.MIDlet;

public class HelloWorld extends MIDlet {

Displaydisplay;

public HelloWorld(){

//super();

display= Display.getDisplay(this);

}

protected void startApp(){

Form form = new Form("Hello World!");

form.append("Welcom to J2ME world!");

display.setCurrent(form);

}

protected void pauseApp(){

}

protected void destroyApp(boolean arg0){

}

}

首先是怎麼讓這個程式能在模擬器上執行的問題。

1、把原始碼敲好,一個字別錯。Java 區分大小寫;

2、WTK和配置好的整合環境都支援編譯和釋出,最後打好一個釋出用的HelloWorld.jad包。

3、直接用模擬器裝入。

4、測試執行。

你可能遇到的問題:

1、編譯原始碼錯,Eclipse可以比較準確的報各種語法錯誤,跟著說明改

2、WTK沒有專案路徑設定,你需要新建一個同名的專案,然後把原檔案拷入相應得src目錄下。但他可以獨立編譯,執行。如果用到對應資源,根目錄指的就是/res

3、這個程式能做的,就是顯示一行文字資訊。連退出也需要系統按鍵實現。

原始碼功能分析:

1、先看兩個 import 裝入的包。都是javax.microedition包中的MIDPJ2ME的一種(profile,書上翻譯為簡表)配置(很多書上把config成為配置,我稱為設定)。用以確認一種完備的Java功能集合,在

CLDC上執行Java程式。由於裝置本身的限制,功能也就會受到限制。關於MIDP的內容,可以找一下J2ME api幫助手冊看一下。介紹的比較詳細。幾個不多的包,控制、介面、輸入輸出、儲存…

2、MIDLet類,配合MIDP環境的應用程式入口實現。用於程式生命週期控制。很多程式可以從這裡開始。簡單的只有startApp()pauseApp()destroyApp()三個虛擬函式要實現。可以看出來,是一個高層級的程式控制入口累。如果要實現豐富的程式邏輯,還要繼續向下。

3、Display可以獲取顯示屏,而Form,Screen,CanvasGameCanvas都是Displayable的子類,可以被指定給Display類進行顯示。Form偏向於高階的元件顯示,列表,圖片,文字框,進度條等等;GameCanvas是針對遊戲進行了功能強化的繪圖板。

這個程式顯然還相當不完整,但至少能運行了。需要做的是多看看API,瞭解一下MIDP下的類關係,基本功能和方法。