当前位置:  编程技术>移动开发
本页文章导读:
    ▪猜数目字 for My G3        猜数字 for My G3 这几天无聊,写了个文曲星等一些低端设备上的游戏:猜数字,实现起来非常简单,写这个也是为了练练手吧,搞了个G3,研究了一下子,总不能白花了那3000+的money吧,大家说.........
    ▪ CLDC API简明介绍        CLDC API简要介绍 * 介绍      迄今为止,我们知道 CLDC 比较适合 J2ME,并且也已经建立了我们的开发环境。在这一章中,我们将更深入地探索 CLDC API。CLDC API 实际上只是 J2SE 的一个子集,.........
    ▪ MIDP API简洁介绍       MIDP API简要介绍  * 介绍      移动信息设备简表 (MIDP) 适合类似于蜂窝电话和寻呼机这样的设备。MIDP,就象 KJava 一样,同样也建立在 CLDC 之上。MID 简表提供一种标准的运行时环境,允许在.........

[1]猜数目字 for My G3
    来源: 互联网  发布时间: 2014-02-18
猜数字 for My G3

这几天无聊,写了个文曲星等一些低端设备上的游戏:猜数字,实现起来非常简单,写这个也是为了练练手吧,搞了个G3,研究了一下子,总不能白花了那3000+的money吧,大家说是吧~

 

大家无聊的时候可以玩玩啊,呵呵~下面是这个游戏的截图

 

 

 

 

 

 

 

 

欢迎各位大牛们提点意见,我好改善改善~感激不尽~

1 楼 rchild 2010-04-23  
还是这样快

    
[2] CLDC API简明介绍
    来源: 互联网  发布时间: 2014-02-18
CLDC API简要介绍
* 介绍

      迄今为止,我们知道 CLDC 比较适合 J2ME,并且也已经建立了我们的开发环境。在这一章中,我们将更深入地探索 CLDC API。CLDC API 实际上只是 J2SE 的一个子集,它包括 java.lang、java.io 和 java.util,另加一个新软件包 -- javax.microedition。我们将逐个来研究这些软件包,并突出显示每一个包中的重要的类。

      尽管每一个类都在 J2SE 中,但是没有必要让每一个类的 CLDC 实现都能实现 J2SE 支持的所有方法。您可以检查 CLDC API 文档以确认哪些方法是受支持的。文档的副本位于安装 J2ME CLDC 时创建的 j2me_cldc/docs 目录下。它提供 PDF 和 javadoc 两种格式。

 

    * java.lang

      CLDC java.lang 软件包是 J2SE java.lang 软件包的一个子集。与 J2SE 相比,它最引人注目的可能便是冗长的浮点操作了,特别是浮点 (Float) 和双精度 (Double) 类。如果使用浮点的话,这些冗余将涉及到所有其它的类。

      相对于 J2SE v1.3 API,CLDC API 中删去了几个其它的类。其中包括 ClassLoader、Compiler、InheritableThreadLocal、Number、Package、Process、 RuntimePermission、SecurityManager、StrictMath、ThreadGroup、ThreadLocal 和 Void。

      我们描述了可从下面几页表中的 CLDC java.lang 软件包中获取的主要的类。Java 开发人员对所有这些类的使用都应该是非常熟悉了。

      除这些核心类之外,您还将看到 CLDC 支持的 Runnable 接口,正象 Exception 、Error 和其它有关的类一样。

 

    * java.lang 核心运行时类

      java.lang 软件包的核心运行时类有:

      · Class -- 显示正在运行的 Java 应用程序中的类和接口。

      · Object -- 与在 J2SE 中相同,Object 是所有 Java 对象的基本类。

      · Runtime -- 为 Java 应用程序提供一种与运行时环境(Java 应用程序在其中运行)进行交互的方法。

      · System -- 提供一些静态的帮助方法,就像为 J2SE 提供方法一样。

      · Thread -- 定义 Java 程序的一个执行线程。

      · Throwable -- Java 语言中所有错误和异常的超级类。

 

    * java.lang 核心数据类型类

      java.lang 软件包中的核心数据类型类有:

      · Boolean -- 包装 boolean 原始数据类型。

      · Byte —- 包装 byte 原始数据类型。

      · Character -- 包装 char 原始数据类型。

      · Integer -- 包装 int 原始数据类型。

      · Long -- 包装 long 原始数据类型。

      · Short -- 包装 short 原始数据类型。

 

    * java.lang 帮助类

      java.lang 软件包的帮助类有:

      · Math -- 包含执行基本数学运算的方法。请注意,所有执行浮点值运算的方法都被省略了,仅保留了关于 integers 和 longs 的方法:abs()、min() 和 max()。

      · String -- 在 Java 中代表对象 String,就像在 J2SE 中一样。

      · StringBuffer -- 代表一个可以修改的串,就像在 J2SE 中一样。

 

    * java.io 输入类

      CLDC API 包含许多 J2SE 中共同使用的输入类。特别地,CLDC java.io 软件包中包括下面一些类:

      · ByteArrayInputStream -- 包含一个内部缓冲器,它代表可能从输入流中读取的字节。

      · DataInput -- 一个接口,从二进制输入流提供字节以供读取并把它们转换成原始 Java 数据类型。DataInputStream 提供该接口的实现。

      · DataInputStream -- 允许应用程序以独立于平台的方式从基层输入流中读取原始 Java 数据类型。

      · InputStream -- 一个抽象类,它是所有代表字节输入流的类的超级类。

      · InputStreamReader -- 读取字节并把它们按照指定的字符编码方法转换成字符。

      · Reader -- 一种读取字符流的抽象类。

      注意:其中一些类可能不包含 J2SE 姊妹版支持的所有方法,就像在 java.lang 软件包中一样。尤其是省略了浮点和双精度方法。

 

    * java.io 输出类

      CLDC API 包含了许多 J2SE 中的共同使用的输出类。特别是,CLDC java.io 软件包中包括下面一些输出类:

      · ByteArrayOutputStream -- 实现一个输出流,在此输出流中数据被写入字节数组。

      · DataOutput -- 一种接口,提供原始 Java 数据类型以供写入二进制输出流。DataOutputStream 提供该接口的实现。

      · DataOutputStream -- 一个输出流,允许应用程序以一种便捷的方式编写原始 Java 数据类型。

      · OutputStream -- 一个抽象类,它是所有代表字节输出流的类的超级类。

      · OutputStreamReader -- 给出字符,并按指定的字符编码方法将其转换为字节。

      · PrintStream -- 添加一种便捷的方法来打印数据值的文本表现形式。

      · Writer -- 编写字符流的一个抽象类。

      其中一些类可能不包含 J2SE 支持的所有方法,比如浮点和双精度方法。

 

    * java.util 收集类

      CLDC java.util 软件包中包含 J2SE java.util 软件包中最常用的类。这些类中包括四个收集类(实际是三个收集类和一个接口),以及日期/时间和实用程序类。

      CLDC 支持的 java.util 收集类有:

      · Enumeration -- 一个接口,通过项目集允许对例程进行重复调用。

      · Hashtable -- 实现 hashtable,将键映射到值。

      · Stack -- 代表了一个后进先出 (LIFO) 的对象集合或堆栈。

      · Vector -- 代表可以调整大小的对象“数组”或者矢量。

 

    * java.util -- 其它的类

      CLDC 支持的 java.util 类中其余部分包括日期和时间类,以及 Random 实用程序类。下表中简要列出了这些类。

      · Calendar -- 一个抽象类,使用一套整型字段如 YEAR、MONTH、 DAY 等来获取和设置日期。

      · Date -- 代表特定的时间和日期,精确到毫秒级。

      · Random -- 一个实用程序类,用来生成 int 或 long 的随机值流。

      · TimeZone -- 代表时区的偏移量,也用于校正时间。

 

    * javax.microedition.io

      迄今为止,我们在 CLDC API 中看到的所有的类都是 J2SE API 的子类。CLDC 还包含一个附加的软件包 -- javax.microedition.io。

      在这个包里唯一被定义的类就是 Connector 类,也称为工厂类,包含创建 Connection 对象或输入、输出流的方法。

      当动态识别一个类的名字时,Connection 对象就被创建了。类名称的识别基于平台名称和被请求连接的协议。描述目标对象的参数串应该满足 RFC 2396 规范所要求的格式。请使用下列格式:

      {scheme}:[{target}][{params}]

      {scheme} 是一个协议的名称,如 http 或 ftp。{target} 通常是一个网络地址,但是面向非网络的协议则可能把它当作一个相当灵活的字段来处理。还有一些参数,如 {params} 被指定为一系列形如 ";x=y" 的分配形式(例如,;myParam=value)。

 

    * javax.microedition.io 帮助接口

      除类属连接工厂类之外,javax.microedition.io 软件包中还包含下列面向连接的接口:

      · Connection -- 定义了最基本的连接类型。这个接口也是此软件包中所有其它连接接口的基本类。

      · ContentConnection -- 定义了一个可以通过内容的流连接。

      · Datagram -- 定义了一个类属数据报接口。

      · DatagramConnection -- 定义了类属数据报连接和它必须支持的性能。

      · InputConnection -- 定义了一个类属输入流连接和它必须支持的性能。

      · OutputConnection -- 定义了一个类属输出流连接和它必须支持的性能。

      · StreamConnection -- 定义了一个类属流连接和它必须支持的性能。

      · StreamConnectionNotifier -- 定义了一个流连接的通告程序必须具有的性能。

    
[3] MIDP API简洁介绍
    来源: 互联网  发布时间: 2014-02-18
MIDP API简要介绍

 * 介绍

      移动信息设备简表 (MIDP) 适合类似于蜂窝电话和寻呼机这样的设备。MIDP,就象 KJava 一样,同样也建立在 CLDC 之上。MID 简表提供一种标准的运行时环境,允许在终端用户设备上动态地配置新的应用程序和服务。

      在本章中,我们将详细地讨论 MID 定义的七个软件包。我们还将建立一个 MIDP 应用程序示例。

 
    * UI 设计注意事项

      MIDP 包括一个低级的 UI API 和一个高级的 UI API。低级的 API 允许您完全访问一个设备的显示屏,也允许访问原始键和指针事件。然而,使用低级 API 时, 没有可用的用户界面控件。应用程序必须精确地绘制出按钮和其它所有的控件。

      相反,高级 API 提供简单的用户界面控件但不能直接访问原始的输入事件或显示屏。由于显示屏的尺寸和 MIDP 设备输入方法的差异,控件显得很抽象。MIDP 的实现确定了绘制控件的方法,也确定了如何管理用户输入。

      让我们在后面的章节里更进一步了解 MIDP 的软件包和类。


    * MIDP API

      MIDP 包含四个核心 CLDC 软件包 (java.lang、java.io、java.util 和 javax.microedition.io),另加下面的三个特定于 MIDP 的软件包:

      · javax.microedition.lcdui

      · javax.microedition.midlet

      · javax.microedition.rms

      我们将在本章的后面部分详细介绍特定于 MIDP 软件包。除了上面新的软件包之外,MIDP 还向核心 CLDC 软件包添加了四个新类,如下所示。

      · java.util.Timer -- 用于为后台线程中将来要执行的任务确定时间。

      · java.util.TimerTask -- 被 java.util.Timer 类使用,用来为后台线程中稍后的执行定义任务。

      · javax.microedition.io.HttpConnection -- 一个接口,为 HTTP 连接定义必要的方法和常量。

      · java.lang.IllegalStateException -- 一个 RuntimeException, 指出在不合法或不合适的时间已经调用的一个方法。


    * MIDlet 介绍

      MIDlet 是一个 Java 类,它扩展了 javax.microedition.midlet.MIDlet 抽象类。实现 startApp()、pauseApp()和 destroyApp()方法,这些方法类似于 J2SE 的 java.applet.Applet 类中的 start()、stop()和 destroy()方法。

      除了扩充 javax.microedition.midlet.MIDlet 的主 MIDlet 类之外,一个 MIDP 应用程序通常还包括其它一些类,这些类能随它们的资源一起被打包成为 jar 文件 -- 称之为 MIDlet 套件。一个 MIDlet 套件中的不同 MIDlet 能共享 jar 文件的资源,尽管不同套件中的 MIDlets 不能直接相互作用。

      MIDlet 在应用程序生命周期中有三种可能的存在状态 -- 运行状态、暂停状态、销毁状态。运行状态,正如其名称所暗示的,意味着 MIDlet 正在运行中。这种状态始于 startApp 方法被调用时。在暂停状态中,MIDlet 持有的所有资源将被释放,但是它准备着再次被运行。调用 notifyPaused 方法时,MIDlet 处于暂停状态。在销毁状态中,MIDlet 已经永久地将其自身关闭,释放所有的资源,等待着废物清理程序的处理。它是通过 notifyDestroyed 方法来调用的。

      在接下来的两页中,我们来看一个简单的 HelloWorld MIDlet。


    * HelloWorld MIDlet

      与使用 KJava HelloWorld 应用程序一样,这个 MIDlet 也会在 MIDP 设备的显示屏上显示 "Hello World!" 和 Exit 按钮,按下该按钮会终止应用程序。

      HelloWorld.java 文件以下面的代码行开始,这些代码行导入稍后会在 HelloWorld 类中使用的类:

      import javax.microedition.midlet.MIDlet;

      import javax.microedition.lcdui.Command;

      import javax.microedition.lcdui.CommandListener;

      import javax.microedition.lcdui.Display;

      import javax.microedition.lcdui.Displayable;

      import javax.microedition.lcdui.Form;

      由于 HelloWorld 类是一个 MIDP 应用程序,它扩展了 MIDlet。它也实现 CommandListener 接口来处理事件:

      public class HelloWorld extends MIDlet implements CommandListener

      下面的方法是一个缺省构造程序,它创建一个新表单,在上面初始化控件,然后显示出来: 

private Form form;
public HelloWorld() {
   // Create a new form on which to display our text
   form = new Form("Test App");
   // Add the text "Hello World!" to the form
   form.append("Hello World!");
   // Add a command button labeled "Exit"
   form.addCommand(new Command("Exit", Command.EXIT, 1));
   // Register this object as a commandListener
   form.setCommandListener(this);
}

      调用 startApp() 方法启动应用程序与小应用程序的启动方法很象。在 MIDle 的一次执行中它可能会被调用多次。如果 MIDlet 暂停,pauseApp() 将会被调用。要重新启动 MIDlet,需调用 startApp()。仅须执行一次的主初始化代码应该放置在构造程序中: 

public void startApp() {
   // Get a reference to the display, and show the form
   Display display = Display.getDisplay(this);
   display.setCurrent(form);
}

      pauseApp() 被调用使得 MIDlet 处于暂停状态。在此应用程序中,当进入暂停状态时,我们没执行任何操作;但是我们仍然需要在 MIDlet 中实现 pauseApp 方法,因为它是父 MIDlet 类中的抽象方法。

      public void pauseApp() { }

      destroyApp() 被调用,破坏了 MIDlet 并使其处于销毁状态。在此应用程序中,我们通过将引用设为 null,释放了对表单的引用。 

public void destroyApp(boolean unconditional) {
   form = null;
}

      commandAction() 方法是事件处理程序,被请求实现 CommandListener 接口。目前,它破坏了应用程序并通知应用程序管理软件 MIDlet 已经完成。 

public void commandAction(Command c, Displayable d) {
   // Destroy this MIDlet
   destroyApp(true);
   // Notify the application management software that this MIDlet
   // has entered the destroyed state
   notifyDestroyed();
}

    * MIDP 软件包

      除标准 CLDC 软件包之外,MIDP 还包含三个附加的软件包:

      · javax.microedition.lcdui -- 定义用来控制 UI 的类。这个软件包既包含高级 UI 类(例如 Form、Command、DateField 和 TextField 等),又包含低级 UI 类(允许用低级方式控制 UI)。

      · javax.microedition.midlet -- 包含 MIDP 主类中的一个,MIDlet 类,为 MIDP 应用程序提供访问关于其运行所在环境信息的权限。

      javax.microedition.rms -- 定义一个类的集合,这些类为 MIDlet 提供了永久存储并随后重新得到数据的机制。 

 


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3