国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

精通J2ME中的Hello World

2019-11-17 06:05:35
字體:
供稿:網(wǎng)友

  初學(xué)java的時候一般都寫過如下的HelloWorld程序,今天我預(yù)備具體講述一下J2ME中的HelloWorld。無論你是J2ME開發(fā)高手還是新手都應(yīng)該讀讀這篇文章,我想它會對你有所幫助!

  在javax.microedition.midlet包中定義了一個非常重要的類MIDlet,所有J2ME的應(yīng)用程序都必須擴(kuò)展這個類,只有這樣才可以使得應(yīng)用治理軟件(application Management Software)治理MIDlet,包括下載、安裝和刪除。在被AMS治理的同時,MIDlet可以和應(yīng)用治理軟件通信通知應(yīng)用治理軟件自己狀態(tài)的變化,通常是通過方法notifyDestroyed()和notifyPaused()實現(xiàn)的。最后MIDlet還可以通過getAppPRoperty(String name)讀取在jad文件中定義的屬性值。

  MIDlet有三個狀態(tài),分別是pause,active和destroyed。在啟動一個MIDlet的時候,應(yīng)用治理軟件會首先創(chuàng)建一個MIDlet實例并使得他處于pause狀態(tài),當(dāng)startApp()方法被調(diào)用的時候MIDlet進(jìn)入active狀態(tài),也就是我們平時所說的運(yùn)行狀態(tài)。在active狀態(tài)調(diào)用destroyApp(boolean unconditional)或者pauseApp()方法可以使得MIDlet進(jìn)入destroyed或者pause狀態(tài)。值得一提的是destroyApp(boolean unconditional)方法,很多開發(fā)者對unconditional參數(shù)不是很理解,事實上,當(dāng)destroyApp()方法被調(diào)用的時候,AMS通知MIDlet進(jìn)入destroyed狀態(tài)。在destroyed狀態(tài)的MIDlet必須釋放了所有的資源,并且保存了數(shù)據(jù)。假如unconditional為false的時候,MIDlet可以在接到通知后拋出MIDletStateChangeException而保持在當(dāng)前狀態(tài),假如設(shè)置為true的話,則必須立即進(jìn)入destroyed狀態(tài)。

  下面是根據(jù)上述問題我編寫的一個J2ME中的HelloWorld程序,他比j2se中的helloworld要復(fù)雜一點(diǎn)。新手可以仔細(xì)看看。

package com.j2medev.mingjava;

import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.*;

public class HelloWorld extends MIDlet implements CommandListener
{
private Display display;
private Form mainForm;
private StringItem stringItem;
private Command exitCommand = new Command("Exit", Command.EXIT, 1);

public static final String WEB_SITE = "WEB_SITE";

protected void startApp() throws MIDletStateChangeException
{

initMIDlet();
display.setCurrent(mainForm);

}

private void initMIDlet()
{
display = Display.getDisplay(this);
mainForm = new Form("Hello World");
stringItem = new StringItem(null, null);
String text = getAppProperty(WEB_SITE);
stringItem.setText(text);
mainForm.append(stringItem);
mainForm.addCommand(exitCommand);
mainForm.setCommandListener(this);
}

protected void pauseApp()
{

}

protected void destroyApp(boolean arg0) throws MIDletStateChangeException
{
System.out.println("exit the application");
}

public void commandAction(Command cmd, Displayable display)
{
if (cmd == exitCommand)
{
try
{
destroyApp(false);
notifyDestroyed();
} catch (MIDletStateChangeException e)
{
e.printStackTrace();
}
}
}

}


  HelloWorldMIDlet.jad文件內(nèi)容如下,假如你還不是很清楚jad文件請參考MIDP中的屬性問題。尤其是當(dāng)你在安裝MIDlet到手機(jī)上的時候。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 宝兴县| 长泰县| 南雄市| 开封县| 延川县| 宝应县| 哈密市| 丰台区| 庆云县| 雷州市| 海阳市| 哈尔滨市| 九江县| 吉首市| 新乡县| 黑龙江省| 城固县| 吉林省| 铜鼓县| 汝城县| 东源县| 若羌县| 合阳县| 通化县| 伊川县| 平定县| 贵溪市| 西丰县| 韶山市| 大丰市| 金秀| 玛沁县| 合阳县| 雷山县| 筠连县| 闽侯县| 吕梁市| 海盐县| 页游| 凤城市| 长汀县|