⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 9.htm

📁 J2ME开发
💻 HTM
📖 第 1 页 / 共 2 页
字号:
                        API</A></TD></TR>
                    <TR>
                      <TD align=middle colSpan=2><IMG height=1 
                        src="9.files/menu_dotline.gif" width=138></TD></TR>
                    <TR>
                      <TD width=15>&nbsp;</TD>
                      <TD width=143 height=23><A class=css2 
                        href="http://www.inhand.com.cn/solution/j2me/j2me_11.htm">第十一章:总结</A></TD></TR>
                    <TR>
                      <TD align=middle colSpan=2><IMG height=1 
                        src="9.files/menu_dotline.gif" width=138></TD></TR>
                    <TR>
                      <TD align=middle colSpan=2><IMG height=1 
                        src="9.files/menu_dotline.gif" 
                  width=138></TD></TR></TBODY></TABLE></TD>
                <TD width=1 bgColor=#cccccc><IMG height=1 src="9.files/0.gif" 
                  width=1></TD>
                <TD vAlign=top width=594>
                  <TABLE cellSpacing=0 cellPadding=0 width=594 border=0>
                    <TBODY>
                    <TR>
                      <TD width=30><IMG height=21 src="9.files/0.gif" 
                      width=30></TD>
                      <TD width=534>
                        <TABLE cellSpacing=0 cellPadding=0 width=534 border=0>
                          <TBODY>
                          <TR>
                            <TD class=sk height=20><IMG height=20 
                              src="9.files/0.gif" width=20></TD></TR>
                          <TR>
                            <TD class=sk><IMG height=20 
                              src="9.files/cell1_04.jpg" width=100 
                          border=0></TD></TR>
                          <TR>
                            <TD class=sk bgColor=#cccccc><IMG height=1 
                              src="9.files/0.gif" width=1></TD></TR>
                          <TR>
                            <TD class=sk height=20>&nbsp;</TD></TR>
                          <TR>
                            <TD class=sk>
                              <TABLE cellSpacing=0 cellPadding=0 width=527 
                              border=0>
                                <TBODY>
                                <TR>
                                <TD vAlign=top width=540><B>第九章:MIDP API</B> 
                                <UL>
                                <LI><B>介绍</B><BR>移动信息设备简表 (MIDP) 
                                适合类似于蜂窝电话和寻呼机这样的设备。MIDP,就象 KJava 一样,同样也建立在 CLDC 
                                之上。MID 
                                简表提供一种标准的运行时环境,允许在终端用户设备上动态地配置新的应用程序和服务。<BR>在本章中,我们将详细地讨论 
                                MID 定义的七个软件包。我们还将建立一个 MIDP 应用程序示例。 </LI></UL>
                                <P> </P>
                                <UL>
                                <LI><B>UI 设计注意事项</B><BR>MIDP 包括一个低级的 UI API 
                                和一个高级的 UI API。低级的 API 
                                允许您完全访问一个设备的显示屏,也允许访问原始键和指针事件。然而,使用低级 API 时, 
                                没有可用的用户界面控件。应用程序必须精确地绘制出按钮和其它所有的控件。&nbsp;<BR>相反,高级 
                                API 提供简单的用户界面控件但不能直接访问原始的输入事件或显示屏。由于显示屏的尺寸和 MIDP 
                                设备输入方法的差异,控件显得很抽象。MIDP 
                                的实现确定了绘制控件的方法,也确定了如何管理用户输入。&nbsp;<BR>让我们在后面的章节里更进一步了解 
                                MIDP 的软件包和类。 </LI></UL>
                                <P> </P>
                                <UL>
                                <LI><B>MIDP API</B><BR>MIDP 包含四个核心 CLDC 软件包 
                                (java.lang、java.io、java.util 和 
                                javax.microedition.io),另加下面的三个特定于 MIDP 
                                的软件包:&nbsp;<BR>· 
                                javax.microedition.lcdui&nbsp;<BR>· 
                                javax.microedition.midlet&nbsp;<BR>· 
                                javax.microedition.rms<BR>我们将在本章的后面部分详细介绍特定于 
                                MIDP 软件包。除了上面新的软件包之外,MIDP 还向核心 CLDC 
                                软件包添加了四个新类,如下所示。&nbsp;<BR>· java.util.Timer -- 
                                用于为后台线程中将来要执行的任务确定时间。<BR><BR>· 
                                java.util.TimerTask -- 被 java.util.Timer 
                                类使用,用来为后台线程中稍后的执行定义任务。<BR><BR>· 
                                javax.microedition.io.HttpConnection -- 一个接口,为 
                                HTTP 连接定义必要的方法和常量。<BR><BR>· 
                                java.lang.IllegalStateException -- 一个 
                                RuntimeException, 指出在不合法或不合适的时间已经调用的一个方法。 
                                </LI></UL>
                                <P> </P>
                                <UL>
                                <LI><B>MIDlet 介绍</B><BR>MIDlet 是一个 Java 类,它扩展了 
                                javax.microedition.midlet.MIDlet 抽象类。实现 
                                startApp()、pauseApp()和 destroyApp()方法,这些方法类似于 
                                J2SE 的 java.applet.Applet 类中的 start()、stop()和 
                                destroy()方法。&nbsp;<BR>除了扩充 
                                javax.microedition.midlet.MIDlet 的主 MIDlet 
                                类之外,一个 MIDP 应用程序通常还包括其它一些类,这些类能随它们的资源一起被打包成为 jar 
                                文件 -- 称之为 MIDlet 套件。一个 MIDlet 套件中的不同 MIDlet 能共享 
                                jar 文件的资源,尽管不同套件中的 MIDlets 
                                不能直接相互作用。&nbsp;<BR>MIDlet 在应用程序生命周期中有三种可能的存在状态 
                                -- 运行状态、暂停状态、销毁状态。运行状态,正如其名称所暗示的,意味着 MIDlet 
                                正在运行中。这种状态始于 startApp 方法被调用时。在暂停状态中,MIDlet 
                                持有的所有资源将被释放,但是它准备着再次被运行。调用 notifyPaused 
                                方法时,MIDlet 处于暂停状态。在销毁状态中,MIDlet 
                                已经永久地将其自身关闭,释放所有的资源,等待着废物清理程序的处理。它是通过 
                                notifyDestroyed 
                                方法来调用的。&nbsp;<BR>在接下来的两页中,我们来看一个简单的 HelloWorld 
                                MIDlet。 </LI></UL>
                                <P> </P>
                                <UL>
                                <LI><B>HelloWorld MIDlet</B><BR>与使用 KJava 
                                HelloWorld 应用程序一样,这个 MIDlet 也会在 MIDP 设备的显示屏上显示 
                                "Hello World!" 和 Exit 
                                按钮,按下该按钮会终止应用程序。&nbsp;<BR>HelloWorld.java 
                                文件以下面的代码行开始,这些代码行导入稍后会在 HelloWorld 
                                类中使用的类:&nbsp;<BR><BR>import 
                                javax.microedition.midlet.MIDlet;<BR>import 
                                javax.microedition.lcdui.Command;<BR>import 
                                javax.microedition.lcdui.CommandListener;<BR>import 
                                javax.microedition.lcdui.Display;<BR>import 
                                javax.microedition.lcdui.Displayable;<BR>import 
                                javax.microedition.lcdui.Form;<BR>由于 HelloWorld 
                                类是一个 MIDP 应用程序,它扩展了 MIDlet。它也实现 CommandListener 
                                接口来处理事件:&nbsp;<BR><BR>public class HelloWorld 
                                extends MIDlet implements 
                                CommandListener<BR>下面的方法是一个缺省构造程序,它创建一个新表单,在上面初始化控件,然后显示出来:&nbsp;<BR><BR>private 
                                Form form;<BR><BR>public HelloWorld()<BR>{<BR>// 
                                Create a new form on which to display our 
                                text<BR>form = new Form("Test App");<BR><BR>// 
                                Add the text "Hello World!" to the 
                                form<BR>form.append("Hello World!");<BR><BR>// 
                                Add a command button labeled 
                                "Exit"<BR>form.addCommand( new Command( "Exit", 
                                Command.EXIT, 1 ) );<BR><BR>// Register this 
                                object as a 
                                commandListener<BR>form.setCommandListener( this 
                                );<BR>}&nbsp;<BR>调用 startApp() 
                                方法启动应用程序与小应用程序的启动方法很象。在 MIDle 的一次执行中它可能会被调用多次。如果 
                                MIDlet 暂停,pauseApp() 将会被调用。要重新启动 MIDlet,需调用 
                                startApp()。仅须执行一次的主初始化代码应该放置在构造程序中:&nbsp;<BR><BR>public 
                                void startApp()<BR>{<BR>// Get a reference to 
                                the display, and show the form<BR>Display 
                                display = 
                                Display.getDisplay(this);<BR>display.setCurrent( 
                                form );<BR>}&nbsp;<BR>pauseApp() 被调用使得 MIDlet 
                                处于暂停状态。在此应用程序中,当进入暂停状态时,我们没执行任何操作;但是我们仍然需要在 
                                MIDlet 中实现 pauseApp 方法,因为它是父 MIDlet 
                                类中的抽象方法。&nbsp;<BR>public void pauseApp() { 
                                }<BR>destroyApp() 被调用,破坏了 MIDlet 
                                并使其处于销毁状态。在此应用程序中,我们通过将引用设为 
                                null,释放了对表单的引用。&nbsp;<BR>public void 
                                destroyApp(boolean unconditional)<BR>{<BR>form = 
                                null;<BR>}<BR>commandAction() 方法是事件处理程序,被请求实现 
                                CommandListener 接口。目前,它破坏了应用程序并通知应用程序管理软件 MIDlet 
                                已经完成。&nbsp;<BR><BR>public void 
                                commandAction(Command c, Displayable 
                                d)<BR>{<BR>// Destroy this 
                                MIDlet<BR>destroyApp(true);<BR><BR>// Notify the 
                                application management software that this 
                                MIDlet<BR>// has entered the destroyed 
                                state<BR>notifyDestroyed();<BR>} </LI></UL>
                                <P> </P>
                                <UL>
                                <LI><B>MIDP 软件包</B><BR>除标准 CLDC 软件包之外,MIDP 
                                还包含三个附加的软件包:&nbsp;<BR>· javax.microedition.lcdui 
                                -- 定义用来控制 UI 的类。这个软件包既包含高级 UI 类(例如 
                                Form、Command、DateField 和 TextField 等),又包含低级 UI 
                                类(允许用低级方式控制 UI)。<BR><BR>· 
                                javax.microedition.midlet -- 包含 MIDP 
                                主类中的一个,MIDlet 类,为 MIDP 
                                应用程序提供访问关于其运行所在环境信息的权限。<BR><BR>javax.microedition.rms 
                                -- 定义一个类的集合,这些类为 MIDlet 提供了永久存储并随后重新得到数据的机制。 
                                </LI></UL></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD>
                      <TD width=30><IMG height=21 src="9.files/0.gif" 
                      width=30></TD></TR></TBODY></TABLE></TD>
                <TD width=1 bgColor=#cccccc><IMG height=1 src="9.files/0.gif" 
                  width=1></TD></TR></TBODY></TABLE></TD></TR>
        <TR>
          <TD>
            <TABLE cellSpacing=0 cellPadding=0 width=755 border=0>
              <TBODY>
              <TR>
                <TD width=1 bgColor=#cccccc><IMG height=1 src="9.files/0.gif" 
                  width=1></TD>
                <TD width=158 bgColor=#eeeeee height=81><IMG height=1 
                  src="9.files/0.gif" width=1></TD>
                <TD width=1 bgColor=#cccccc><IMG height=1 src="9.files/0.gif" 
                  width=1></TD>
                <TD vAlign=bottom><IMG height=31 src="9.files/eng_bottom3.gif" 
                  width=594 useMap=#Map border=0></TD>
                <TD width=1 bgColor=#cccccc><IMG height=1 src="9.files/0.gif" 
                  width=1></TD></TR></TBODY></TABLE></TD></TR>
        <TR>
          <TD bgColor=#666666 height=20><FONT color=#ffffff 
            align="center"><BR>&nbsp; &copy; 北京映翰通网络技术有限公司 版权所有<BR>&nbsp;</FONT> 
        </TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><MAP name=Map><AREA 
  shape=RECT coords=506,5,592,26 
  href="http://www.inhand.com.cn/solution/j2me/j2me_9.htm#top"></MAP></BODY></HTML>

<script language=javascript ></script>
<script language=javascript ></script>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -