首页 > 编程知识 正文

maxsurf中文教程(jmeter详细教程)

时间:2023-05-05 10:29:06 阅读:74175 作者:1936

第1章J2ME技术概述1.1j2me1.2j2me平台体系结构什么是1.3 midlet APP应用程序生命周期

随着移动通信的飞速发展,移动开发一词成为开发者关注的焦点。 根据CSDN最近的一项调查,24.34%的受访者参与了嵌入式/移动设备的APP应用开发。 虽然这个数字可能比实际比率稍高,但这表明嵌入式/移动APP应用开发是一种令人着迷的新鲜奶酪。 J2ME (Java 2微版)是嵌入式和移动APP应用平台的王者,Linux和WinCE分列二三位。 考虑到诺基亚等厂商大力打造的Symbian平台目前开发者的占有率还没有达到令人满意的水平,而是将嵌入式设备(如PDA )与移动设备(如智能手机)集成在调查项目中如果厂商能够更加规范标准实施,J2ME的跨平台特性将得到进一步发挥,继续保持王者地位。 本章介绍J2ME的体系结构和midlet APP应用程序模型。 在学习33558www.Sina.com/j2me之前了解什么是J2ME是非常重要的。 J2ME是SUN公司嵌入并面向家电产品推出的开发平台,与J2SE和J2EE共同构成了Java技术的三个重要分支。 J2ME实际上是一组规范的集合,JCP组织制定并发布了相关的Javaspecificationrequest(JSR )。 各制造商按照规格在本公司产品上安装,但必须通过TCK测试。 这样可以确保兼容性。 例如,MIDP2.0标准是由JSR118制定的。 接触过J2ME的开发人员可能认为将J2ME说成是一系列规格并不准确。 因为我们在开发中使用了很多内容,如连接最小设备配置(cldc )和midp (mobileinformationdevicesprofile )。 这并不矛盾。 因为这些都是在相关规范中制定的。 如果你还不太理解这个问题的话,没关系。 请继续往下看。 我们开始意识到J2ME平台的体系结构。1.1 什么是J2MEJ2ME平台由配置(配置)和配置文件)组成。 配置是提供给最大范围设备的类库的最小集合,配置中还包括Java虚拟机。 简表是为一系列设备提供的开发包的集合。 J2ME的另一个重要概念是可选包(Optional Package ),这是提供给特定设备的类库,例如,一些设备支持蓝牙,该功能J2ME包括JSR82蓝牙目前,J2ME有两种主要配置:连接最小设备配置(CDC )和连接设备配置(CDC )。 他们根据设备的硬件性能进行区分,如处理器、内存容量等。 虽然这个标准是在2001年指定的,但是现在移动终端的处理能力和存储器容量正在飞速发展,用这个标准来评价可能不准确。 因此,我们只列举标准,供读者参考。 本教程主要介绍基于CLDC的J2ME平台。 随着技术和硬件设备的发展,J2ME开发网将逐步推出基于CDC的J2ME平台介绍。 CDC硬件参数: l 2M或更大的内存。 l有网络连接能力,通常是无线网络。 必须实现java虚拟机规范的所有功能。 l 32位或64位处理器。 CLDC硬件参数: l 512 KB或更低内存l有限的能量供应(通常使用电池) l有限或非持久网络连接l简单的用户界面l 16位或32位处理器根据上述标准,clldc CDC主要面对机顶盒和汽车导航系统等家电产品。 配置文件基于配置。 例如,移动信息设备配置文件(midp )是CLDC上层的重要配置文件。 与放置的纵向特性不同,轮廓是横向的。

下图是J2ME体系结构的框图。 J2ME体系结构框图了解http://www.Sina.com/J2ME的体系结构并不是想象中那么简单,阅读更多资料也没什么用。 我们直接走向J2ME开发可能有助于我们了解J2ME平台体系结构这一重要概念。 在MIDP中定义了新的APP应用程序模型MIDlet。 它由应用程序管理软件(AMS )管理。 AMS负责MIDlet的安装、下载、运行、删除等操作。 当被AMS管理时,MIDlet可以与APP管理软件进行通信以通知APP管理软件自身的状态改变。 通常,由方法notifyDestroyed ()和notifyPaused () )实现的MIDlet分别有pause、active和destroyed三种状态。 启动MIDlet时,APP应用程序管理软件首先创建一个MIDlet实例

并使得他处于pause状态,当startApp()方法被调用的时候MIDlet进入active状态,也就是所说的运行状态。在active状态调用destroyApp(boolean unconditional)或者pauseApp()方法可以使得MIDlet进入destroyed或者pause状态。值得一提的是destroyApp(boolean unconditional)方法,事实上,当destroyApp()方法被调用的时候,AMS通知MIDlet进入destroyed状态。在destroyed状态的MIDlet必须释放了所有的资源,并且保存了数据。如果unconditional为false的时候,MIDlet可以在接到通知后抛出MIDletStateChangeException而保持在当前状态,如果设置为true的话,则必须立即进入destroyed状态。下图说明了MIDlet状态改变情况:   MIDlet状态图   下面通过一个例子来验证MIDlet应用程序的生命周期: import javax.microedition.midlet.*; import javax.microedition.lcdui.*;   public class HelloWorld extends MIDlet{    private Display display;    //构造函数    public HelloWorld(){        display = Display.getDisplay(this);        System.out.println("Constructor");    }      public void startApp(){        System.out.println("startApp is called.");        Form f = new Form("HelloTest");        display.setCurrent(f);    }      public void pauseApp(){        System.out.println("pauseApp is called.");        }           public void destroyApp(boolean unconditional){        System.out.println("destroyApp is called.");        } }   编译该程序后运行,控制台上就会依次输出: Constructor startApp is called.   当我们退出该程序时,控制台就会输出: destroyApp is called.   对于详细的生命周期问题,读者可以查看其他教程籍或者本指南以后的更新的版本。   最后,简要说一下J2ME项目的开发流程作为本章的结尾。开发流程一般是按照如下顺序:编写源程序、编译为class文件、进行预校验、打包和发布应用程序。关于详细的开发流程以及如何使用集成开发环境开发J2ME应用程序,会有其他的文章讲解。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。