J2ME学习(四)——将MIDlet和界面分离(比较基础)

J2ME学习(四)——将MIDlet和界面分离(比较基础)

<o:p> </o:p>

       虽然使用面向对象的思想进行J2ME的编程,会增加代码量(增加发布文件的大小)和提高代码的复杂性。但是为了代码的可维护性和可扩展性,现在绝大多数的程序还是将界面和逻辑分离开来,下面先说明一下如何将MIDlet主类和界面分离。

       在界面和MIDlet中,需要交换的系统内容主要有两部分:1、Display对象;2、MIDlet中的退出处理。

       示例代码如下:

       package testmidlet;

<o:p> </o:p>

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

<o:p> </o:p>

public class TestMIDlet extends MIDlet {

  private static TestMIDlet instance;

  private LoginForm displayable ;

private Display display;

<o:p> </o:p>

  /** Constructor */

  public TestMIDlet() {

    instance = this;

   display = Display.getDisplay(this);

   displayable= new LoginForm(display);

  }

<o:p> </o:p>

  /** Main method */

  public void startApp() {

    display .setCurrent(displayable);

  }

<o:p> </o:p>

  /** Handle pausing the MIDlet */

  public void pauseApp() {

  }

<o:p> </o:p>

  /** Handle destroying the MIDlet */

  public void destroyApp(boolean unconditional) {

  }

<o:p> </o:p>

  /** Quit the MIDlet */

  public static void quitApp() {

    instance.destroyApp(true);

    instance.notifyDestroyed();

    instance = null;

  }

<o:p> </o:p>

}

<o:p> </o:p>

package testmidlet;

<o:p> </o:p>

import javax.microedition.lcdui.*;

<o:p> </o:p>

public class LoginForm extends Form implements CommandListener {

    private Display display;
  /** Constructor */

  public LoginForm(Display display) {

    super("Test");

    this.display = display;
    setCommandListener(this);

    // add the Exit command

    addCommand(new Command("Exit", Command.EXIT, 1));

  }

<o:p> </o:p>

  /**Handle command events*/

  public void commandAction(Command command, Displayable displayable) {

    /** @todo Add command handling code */

    if (command.getCommandType() == Command.EXIT) {

// stop the MIDlet

      TestMIDlet.quitApp();

    }

  }

}
<o:p>
其中display对象可以通过构造方法进行传递,退出方法可以通过方法调用来执行.这样,你的代码就能实现MIDlet类和界面分离了.</o:p>

基于J2ME的手机游戏开发 随着通信技术的发展和手机的普及,手机游戏的开发技术越来越为人们所关注。以J2ME为开发平台,利用Java提供强大工具,不但可以在手机上实现静态HTML技术所无法实现的计算处理、数据存储、与服务器的通信等功能,而且能够开发各种手机游戏。本文在介绍J2ME及其体系结构的基础上,以贪吃蛇游戏为实例,描述了借助J2ME的MIDlet类库开发手机游戏的过程。 阅读详情

相关推荐

J2ME开发基础全接触:从入门到精通

本文还有配套的精品资源,点击获取 简介:Java 2 Micro Edition (J2ME) 是Java平台的一个子集,专为嵌入式系统和移动设备等物联网应用设计。本教程全面覆盖J2ME开发的基础知识,包括架构、开发环境、核心组件、用户界面、数据存储、网络编程、设备特性和性能优化等关键内容。开发者将学习如何利用MIDP和CLDC等技术,创建具有丰富功能的移动应用程序。本教程...

weixin_30798867的博客 1780

j2me模拟器qq2007_如何在J2ME中创建MIDlet

j2me模拟器qq2007总览 Java移动应用程序称为J2ME。 通常,当我们在移动技术领域工作时,我们必须考虑J2ME应用程序。 通过这种方式,我们可以开发我们的移动应用程序,也可以通过jad或jar文件将其安装在我们的设备中。 近年来,手机开发中最大的增强是JavahostedMIDlet的引入。 MIDlet在Java虚拟机上执行,该Java虚拟机对底层硬件进行了抽象处理,并允许开发人员...

cunhu2961的博客 2153

J2ME自学教程:从入门到实战

本文还有配套的精品资源,点击获取 简介:J2ME(Java Micro Edition)是Java平台用于嵌入式和移动设备开发的重要组成部分。本教程涵盖了J2ME开发的各个方面,从基础概念到高级编程技巧。通过循序渐进的章节,初学者将掌握J2ME的环境搭建、MIDlet开发、用户界面设计,以及设备特性的理解和利用。本教程旨在帮助学生从零开始构建自己的J2ME应用程序,为移动世...

weixin_42589700的博客 1270

midlet_如何在J2ME中创建MIDlet

midlet 总览 Java移动应用程序称为J2ME。 通常,当我们在移动技术领域工作时,我们必须考虑J2ME应用程序。 通过这种方式,我们可以开发我们的移动应用程序,也可以通过jad或jar文件将其安装在我们的设备中。 近年来,手机开发中最大的增强是JavahostedMIDlet的引入。 MIDlet在Java虚拟机上执行,该Java虚拟机对底层硬件进行了抽象,并使开发人员可以创建在通常支...

最佳 Java 编程 276

全面J2ME中文教程与实战指南

本文还有配套的精品资源,点击获取 简介:本教程详细介绍了J2ME(Java 2 Micro Edition),这是一个专门用于嵌入式系统和移动设备的Java平台子集。J2ME通过CLDC和MIDP两个主要组成部分,为开发小型应用提供了一个统一的框架,并支持WORA原则。教程从基础概念到开发流程,包括了虚拟机、配置和配置文件、MIDlet编写、用户界面、网络连接、持久存储等方...

weixin_28999139的博客 1106

全面J2ME技术实训与项目实践

Java 2 Platform, Micro Edition (J2ME)是Java平台的一个微版本,最初由Sun Microsystems公司开发,用于有限的资源环境,如早期的移动电话和其他嵌入式系统。J2ME作为一种跨平台的解决方案,在2000年代初期风靡一时,成为开发移动应用程序的事实标准。由于它具有"编写一次,到处运行"的特性,J2ME为开发者提供了一个相对容易接触并为广泛的消费者设备设计应用程序的机会。

weixin_32661831的博客 926

如何在J2ME中创建MIDlet

总览 Java移动应用程序称为J2ME。 通常,当我们在移动技术领域工作时,我们必须考虑J2ME应用程序。 通过这种方式,我们可以开发我们的移动应用程序,也可以通过jad或jar文件将其安装在我们的设备中。 近年来,手机开发中最大的增强是JavahostedMIDlet的引入。 MIDlet在Java虚拟机上执行,该Java虚拟机抽象出底层硬件,并允许开发人员创建演示文稿,这些演示文稿可以在...

最佳 Java 编程 422

J2ME平台上的Java手机游戏模拟器实战指南

随着移动互联网的高速发展,手机游戏逐渐成为人们娱乐生活的重要部分。Java手机游戏模拟器为手机游戏爱好者提供了一个重要的平台,它允许用户在非移动设备上运行J2ME(Java 2 Micro Edition)编写的手机游戏。本章将介绍Java手机游戏模拟器的基本概念、它的发展历程以及在当今社会中的应用价值。KEmulator模拟器是一个专门为Java开发的手机游戏模拟器,它可以在Windows桌面操作系统上运行,提供了接近真实手机环境的模拟功能。

weixin_31176789的博客 977

J2me中在MIDlet中控制跳转

以前写j2me的项目的时候,往往是一个页面(Canvas或者form)跳到领一个页面(Canvas或者form),这样做的优点是:写代码比较直观,能够直接看到流程。缺点是:维护修改的时候必须要看懂每一个页面的代码,去寻找跳转的语句。最近学了一个新的思想就是在MIDlet中写一个专门用来跳转的方法来控制跳转比较好。 1.MIDlet代码例如:AppMian.java文件代码如下:

夏亚欣的博客 1101

【NLP】文献翻译4——CH-SIMS:中文多模态情感分析数据集与细粒度的模态注释

CH-SIMS: A Chinese Multimodal Sentiment Analysis Dataset with Fine-grained Annotations of Modality摘要1. 介绍2. 相关工作2.1 多模态数据集2.2 多模态情感分析2.3 多任务学习3. CH-SIMS 数据集3.1 数据获取3.2 标注3.3 特征提取4. 多模式多任务学习框架4.1 单模态子网4.2 特征融合网络4.3 优化目标5. 实验5.1 基准5.2 实验的细节5.3 结果和讨论5.3.1 与

YoungSeng's Blog 1万+

Multisim仿真运放积分器踩坑实录:为什么你的方波变不成三角波?

本文针对Multisim仿真运放积分器时方波无法转换为三角波的常见问题,提供了详细的排查与调试指南。文章指出,经典RC积分电路因直流反馈开路导致运放饱和,核心解决方案是在反馈电容两端并联大阻值电阻以稳定直流工作点。通过参数优化(调整Rin、C、Rf)和高级仿真技巧,手把手教你调出线性度好、幅度适中的完美三角波,并分享异常波形(如饱和、不对称、振荡)的对应策略。

weixin_29231263的博客 115

J2ME开发初探

                                                                                                                        本文作者: simore (mysimore@163.com )1.1. J2ME简介        J2ME是Java 2 Platform, Micro E

3376

Julia Ann老司机管理系统

https://content.badgirlsusa.com/Julia_Ann-Sexy_Julia_Ann_Fucks_A_Lil_Elf's_Big_Cock_/Julia-Ann-Naughty-America-%E6%80%A7%E6%84%9F%E7%9A%84%E8%A3%98%E8%8E%89%E5%A9%AD%E5%AE%89%E4%BA%82%E6%90%9E-lil-%E7%B2%BE%E9%9D%88%E7%9A%84%E5%A4%A7%E5%85%AC%E9%9B%9E-2020

www_oracle_com的博客 22万+

技术相关 | J2ME-MIDlet和Android-Activity生命周期的比较

之前在网上看到问题,移动互联联网开发是用J2ME比较好还是用Android比较好,亦有问题问Android是不是J2ME的一种。就从字面概念理解,Android 是手机操作系统,J2ME是java语言的一个方向,这个方向是针对移动平台(例如手机)开发。 其实大家比较关注的是J2ME开发和Android开发的异同,而学习过J2EE开发的人群可能会认为J2ME比较好上手,但是看过抽象类之后

胡说100道 352

深入解析FPGA中的GTX高速收发器架构与设计原理

本文深入解析了FPGA中GTX高速收发器的核心架构与设计原理。文章将GTX比作数据“高速公路”,详细拆解了其PMA(物理媒介适配层)与PCS(物理编码子层)的双层结构,阐述了串并转换、时钟恢复等关键技术,并提供了时钟源选型(QPLL/CPLL)、上电复位流程及信号完整性调试等实战指南,是掌握高速接口设计的必备知识。

f6g7h8i9j的博客 221

R 分析裂区试验设计

裂区试验有主区部分和副区部分, 因而有主区部分误差(误差 a,简记为Ea )和副区部分误差(误差b,简记为Eb) 分别用于测验主区处理以及副区处理和主、副互作的显著性。对同一个二因素试验资料作自由度和平方和的分解,则可发现随机区组的误差项自由度和平方和分别为DFe、SSe,而裂区设计有两个误差项,其自由度和平方和分别为DFEa,DFEb, SSEa, SSEb。而区组,处理效应等各个变异项目的自由

samhuairen的专栏 8934

J2ME入门之HelloWorld

引言  前面几篇文章已经介绍了Eclipse及其工作环境的安装、配置过程,并完成各项相关准备工作。因此从本文开始将讲述如何使用前面配置好的Eclipse开发环境来创建J2ME项目,开始真正的J2ME开发之旅。由于这是创建的第一个J2ME程序,按照程序开发的惯例,这头把交椅自然又是非"Hello World"莫属了。HelloWorld虽然功能简单,但是麻雀虽小,五脏俱全,通过这个小程序的开发,完全

runner0592的专栏(what's up?) 4533

交通规划仿真软件:TransCAD_(7).公交系统规划与分析

通过TransCAD进行公交系统规划与分析,可以有效地评估公交网络的性能,优化线路设计,提高服务质量。数据准备、模型建立、仿真运行和结果分析是公交系统规划与分析的关键步骤。在实际应用中,规划者和分析师可以根据仿真结果提出具体的优化建议,不断完善公交系统的运行效率和乘客体验。

kkchenjj的博客 957

精通J2ME中的Hello World

       初学java的时候一般都写过如下的HelloWorld程序,今天我准备详细讲述一下J2ME中的HelloWorld。无论你是J2ME开发高手还是新手都应该读读这篇文章,我想它会对你有所帮助!      在javax.microedition.midlet包中定义了一个非常重要的类MIDlet,所有J2ME的应用程序都必须扩展这个类,只有这样才可以使得应用管理软件(Applicat

mingjava的专栏 2318

Flink 运维监控与指标采集实战(Prometheus + Grafana 全流程)

Flink运维监控在实时计算场景中至关重要,因为Flink作业需要7×24小时稳定运行,对性能、资源、故障感知和状态变化的实时监控是保障系统稳定的关键。Flink自带的Metrics系统提供了基本的监控能力,但为了更全面的监控,Prometheus+Grafana成为最主流的解决方案。通过配置PrometheusReporter和Grafana仪表盘,可以实现对Flink作业的全面监控,包括CPU、内存、吞吐量、Checkpoint状态、KafkaSink性能等关键指标。此外,自定义指标采集和报警机制的配置

晴天彩虹雨的博客 1369

HX711重量传感器原理图设计,已量产(压力传感器)

最近调通了一款针对家用、物联网场景的重量传感套件,核心用了 HX711 这颗经典的称重 AD 芯片,还加了用户最需要的 “一键校准” 功能 —— 之前帮朋友做家用米桶余量报警时,用户总吐槽校准步骤太繁琐,这次的方案把操作简化到只按一个键,试下来体验好了不少。正好拆解下这套硬件的设计逻辑,供做同类产品的朋友参考。

不脱发的程序猿 375

J2ME中文教程 10 MIDlet的开发流程与部署

作者:tct66  文章来源:http://www.j2medev.com/Article/ShowArticle.asp?ArticleID=26910.1       j2me程序的开发流程在本章之前所介绍的都是怎么样编写J2ME的源文件(即*.java文件)。因为j2me不同于j2se程序的开发流程,在编写好java源文件后,我们还要继续进行如下工作:l         编译l       

mobilechannel的专栏 1403

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

J2ME简明教程上

    第一章 J2ME开发简介 目标: 掌握J2ME的基本概念 了解CLDC特性 对手机开发有整体上的认识 1.1 J2ME基本概念 手机上的应用软件经历了3个阶段: z 仅提供基本通话功能 z 简单的应用程序(电话簿) z 网络功能(WAP) 使用人群的增长,手机厂商依然闭门造车,导致2个问题的出现: z 没有开放的平台,各自的软件不能相互使用。 z 访问Inter

创业的程序员 2157

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

上一篇: J2ME学习(三)——如何播放声音
下一篇: J2ME应用实例——一个简单的计算器实现(附源代码)
java2000_test
博客等级 码龄19年 10粉丝 320原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值