选择显示字体大小

精通j2me中的hello world

  初学java的时候一般都写过如下的helloworld程序,今天我准备详细讲述一下j2me中的helloworld。无论你是j2me开发高手还是新手都应该读读这篇文章,我想它会对你有所帮助!

  在javax.microedition.midlet包中定义了一个非常重要的类midlet,所有j2me的应用程序都必须扩展这个类,只有这样才可以使得应用管理软件(application management software)管理midlet,包括下载、安装和删除。在被ams管理的同时,midlet可以和应用管理软件通信通知应用管理软件自己状态的变化,通常是通过方法notifydestroyed()和notifypaused()实现的。最后midlet还可以通过getappproperty(string name)读取在jad文件中定义的属性值。

  midlet有三个状态,分别是pause,active和destroyed。在启动一个midlet的时候,应用管理软件会首先创建一个midlet实例并使得他处于pause状态,当startapp()方法被调用的时候midlet进入active状态,也就是我们平时所说的运行状态。在active状态调用destroyapp(boolean unconditional)或者pauseapp()方法可以使得midlet进入destroyed或者pause状态。值得一提的是destroyapp(boolean unconditional)方法,很多开发者对unconditional参数不是很理解,事实上,当destroyapp()方法被调用的时候,ams通知midlet进入destroyed状态。在destroyed状态的midlet必须释放了所有的资源,并且保存了数据。如果unconditional为false的时候,midlet可以在接到通知后抛出midletstatechangeexception而保持在当前状态,如果设置为true的话,则必须立即进入destroyed状态。

  下面是根据上述问题我编写的一个j2me中的helloworld程序,他比j2se中的helloworld要复杂一点。新手可以仔细看看。

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文件内容如下,如果你还不是很清楚jad文件请参考midp中的属性问题。尤其是当你在安装midlet到手机上的时候。

  midlet-jar-size: 2128
  midlet-1: helloworld,/icon.png,com.j2medev.mingjava.helloworld
  midlet-jar-url: helloworldmidlet.jar
  microedition-configuration: cldc-1.0
  midlet-version: 1.0.0
  midlet-name: helloworldmidlet
  midlet-vendor: www.j2medev.com
  microedition-profile: midp-1.0
  web_site: www.j2medev.com


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons