博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[转载]使用J2ME进行开发一个简单的KJava应用程序示例(2)
阅读量:2447 次
发布时间:2019-05-10

本文共 2219 字,大约阅读时间需要 7 分钟。

使用J2ME进行开发一个简单的KJava应用程序示例(2)
开发一个简单的KJava应用程序示例
使用J2ME进行开发一个简单的KJava应用程序示例(2)
 第三节 构建一个 Palm应用程序
  好,现在你对 J2ME的程序有一点感性认识了吧?现在让我们做一些实事吧,我将介绍如何构建一个 运行于 Palm OS设备上的 Java应用程序。首先,虽然J2ME是Java技术,但这并非意谓着你可以使用现有的 Java应用程序,重新编译它们然后把它们运行于新的设备上。在前面几章中我已经谈过,J2SE和J2EE使用的Java虚拟机中的许多关键特性已经从J2ME虚拟机中删除了,因为设备的资源有限。
  J2ME带的 Java虚拟机(KVM)缺乏浮点数支持;J2ME应用程序与 J2SE、 J2EE应用程序的另外一个重要的差别是缺乏优先型多任务,虽然它不是 Java规范中所述的必要条件,但是几乎你的 J2SE、 J2EE应用程序运行的所有机器都支持优先型多任务。这意味着 CPU在多个 Java线程之间共享而不必在你的程序中添加任何特殊的代码,而 J2ME使用的设备则往往没有这种功能,为了确保多线程能够工作,你必须调用 Thread.yield()方法。
  使用 CLDC简表的另一个值得注意的方面是J2ME类库缺少许多 J2SE类库中的类。在构建应用程序时,必须使用这有限制的类库。当你下载到CLDC文件时,你可以仔细考察你获得的文件,弄清楚哪一个类包含在CLDC规范中。你必须对付的最后一个问题是 CLDC类库内部缺少访问用户界面元素--按钮、菜单、图形。不使用 Palm的用户界面,就不大可能为 Palm OS设备开发应用程序, Sun已经解决了这个问题--使用一个单独的类库 com.sun.kjava来提供给你访问基层 Palm用户界面的权限。下面这个示例程序就使用类库创建窗口、按钮和对话框。不过请注意,kjava类库既不是 MIDP配置也不是 CLDC简表的官方部分,它很有可能在未来的版本中改变或消失。这就意味着你使用 kjava类库写的任何程序,一旦发行新的J2ME版本你就不得不修改这个程序以适应新的J2ME版本。但是现在,它还是你开发使用Palm用户界面的应用程序的唯一选择。
import lang.*;
import com.sun.kjava.*;
public class HelloWorld extends Spotlet
implements DialogOwner {
private Button quitButton;
private Button aboutButton;
private TextBox welcomeTextBox;
private final String welcomeString = "Hello World ";
private final String aboutTitleString = "About Hello World";
private final String aboutString = "HelloWorld J2ME CLDC Application";
public HelloWorld() {
register(WANT_SYSTEM_KEYS);
welcomeTextBox = new TextBox(welcomeString, 10, 10, 140, 130);
aboutButton = new Button("About", 75, 140);
aboutButton.setEnabled(true);
quitButton = new Button("Quit", 125, 140);
quitButton.setEnabled(true);
paint();
}
public void dialogDismissed(String title) {
Graphics.clearScreen();
register(WANT_SYSTEM_KEYS);
paint();
}
public void paint() {
welcomeTextBox.paint();
aboutButton.paint();
quitButton.paint();
}
public void penDown(int x, int y) {
if (aboutButton.pressed(x, y)) {
Dialog aboutDialog =
   new Dialog(this, aboutTitleString, aboutString, "OK");
aboutDialog.showDialog();
}
if (quitButton.pressed(x, y))
System.exit(0);
}
public static void main(String args[]) {
new HelloWorld();
}
}

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/374079/viewspace-131705/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/374079/viewspace-131705/

你可能感兴趣的文章
如何在Windows Server 2012中关闭和打开GUI
查看>>
浏览器中禁用某些js加载_禁用加载项以加快Internet Explorer 9中的浏览
查看>>
ubuntu软件包降级命令_如何在Ubuntu上降级软件包
查看>>
vivoz手机如何辨别二手_购买二手智能手机的吸引力下降
查看>>
hbuilder基座_遇到问题时如何修复Mac的基座
查看>>
kindle 电子书阅读器_您的Kindle不仅仅是电子阅读器:5个隐藏的Kindle功能
查看>>
lightroom_如何从Lightroom预览文件中恢复图像
查看>>
vue valley_Stardew Valley移动版可让您导入PC保存游戏
查看>>
如何将凭据添加到Windows Credential Manager Vault
查看>>
mac 自定义快捷键_自定义Mac键盘快捷键的6种最佳工具
查看>>
word替换使用通配符_在Word 2016中搜索时如何使用通配符
查看>>
instagram h账号_Instagram帐户被黑客入侵,立即锁定您的帐户
查看>>
托管服务器贵吗_您可以在家庭Internet连接上托管Web服务器吗?
查看>>
ipad和iphone切图_如何在iPhone或iPad上使用和配置屏幕时间
查看>>
最佳下载酷壁纸的网站
查看>>
如何设置Roav Viva Alexa车载充电器
查看>>
言论管制_您的言论:如何设置新手证明计算机
查看>>
感谢您的提问_您所说的:您最感谢的技术
查看>>
如何从Windows Live Mesh迁移到SkyDrive
查看>>
仿win7 aero_如何禁用Windows 7的Aero性能警告?
查看>>