学习J2ME已经有几天的时间了,今天我以一个初学者的角度来谈谈如何学习J2ME
记得我第一次看J2ME的书时间是在我要去应聘xxx公司的J2ME开发工程师职位的前一天,那天为了面试的需要我准备了一天的时间,对于一个J2ME的菜鸟都还算上的我可想而之在短短的一天时间能准备成什么样子,我们知道一门语言要入门是得有一个过程的,这个过程至少要有4天的时间,何况面对的大家公认很难的J2ME,有的人编代码编了一辈子也许都没有机会接触到它,记得当时我根据招聘信息上面的要求,强行自己记忆了一些知识点,可是还没有到了面试时忘记得一干二尽,当时恨自己不成钢,幸亏笔记的时候大部分是Java基础知识,J2ME的知识都是些选择题,也许是这些选择题我大部分都选择对了,因为后来听说我的笔试分数还很高哦。
要学习好J2ME Java基础是关键
首先在学习J2ME之前要弄懂的知识:
①Java中包结构的关系
②private、protected、defualt、public在不同的情况下的访问权限
③要真正理解抽象类、抽象方法、继承的含义及其接口的属性的理解
④有一定的模式设计概念:什么是单例设计模式、工程设计模式?
⑤理解线成的正在执行过程(注意:Thread类在J2ME中没有stop()方法)
⑥对输入输出的理解
⑦有察看API的能力
我觉得有了上面的基础后在学习J2ME就可以了,提出⑦条的原因是我在学习Java有几年了还没有这样的能力,不是因为我的英文太差,而是因为我没有下意识的告诉自己去查,在遇到问题时只是养成了google的习惯,希望大家不要走自己路,遇到问题一定先自己查相关的API,不行再想其他的办法,这可是我几天在家的埋头查询(因为当时家没有安装宽带网,只能看API文档)的体会,人的潜能是逼出来的嘛,所以要下意识地给自己施加压力哦。
我们来看J2ME的API
MIDlet类:所有的应用程序都要继承这个类
记得第一次看J2ME的书的时候,没有一本书分析一个J2ME的程序的结构,要是有很好的Java基础看看API就可以搞定――――这里要用到的知识:extends、abstract的真正含义,下面我再好好补充一下:
一个抽象类要是它的子类没有声明是abstract,该自类必须重写父类的抽象方法,这样看看MIDlet类的就知道MIDlet是一个abstract类,所以它的子类要重写它的startApp()、pauseApp()、destroyApp(Boolean unconditional)这三个方法。一个abstract类的默认属性是什么也的弄懂,这可以跟interface结合着来理解。
入门级别的学习之道:
我们在学习一门语言经常的入门例子就是“Hello World”,我们也以在程序运行时在手机屏幕上显示“Hello World”字符为例来作为入门的第一个J2ME程序。代码如下:
import javax.microedition.midlet.MIDlet; import javax.microedition.midlet.MIDletStateChangeException; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.TextBox; public class HelloWorld extends MIDlet { private Display displayable; private TextBox nameTextBox; public HelloWorld() { displayable = Display.getDisplay(this); } protected void startApp() throws MIDletStateChangeException { nameTextBox = new TextBox("", "Hello World", 20, 1); displayable.setCurrent(nameTextBox); } protected void pauseApp() { } protected void destroyApp(boolean unconditional) throws MIDletStateChangeException { } }
在看了上面的最简单的HelloWorld程序要弄懂的类:Display、TextBox、MIDlet,通过这个例子要对里面涉及到每个类的具体用法有很清楚的理解,这样的要求在刚学习J2ME的时候肯定会感觉到很类,但这是一个良好的习惯,这样坚持下来在写其他的代码不久就得心应手了。下面再在上面的例子的基础上添加一个退出菜单,只需要让上面的类实现CommandListener接口就行了。
import javax.microedition.midlet.MIDlet; import javax.microedition.midlet.MIDletStateChangeException; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.TextBox; import javax.microedition.lcdui.CommandListener; import javax.microedition.lcdui.Command; import javax.microedition.lcdui.Displayable; public class HelloWorld extends MIDlet implements CommandListener { private Display displayable; private TextBox nameTextBox; private Command exitCommand; public HelloWorld() { displayable = Display.getDisplay(this); } protected void startApp() throws MIDletStateChangeException { nameTextBox = new TextBox("", "Hello World", 20, 1); exitCommand = new Command("退出", Command.EXIT, 1); nameTextBox.addCommand(exitCommand); nameTextBox.setCommandListener(this); displayable.setCurrent(nameTextBox); } protected void pauseApp() { } protected void destroyApp(boolean unconditional) throws MIDletStateChangeException { } public void commandAction(Command command, Displayable displayable) { if (command == exitCommand) { try { destroyApp(false); } catch (MIDletStateChangeException e) { e.printStackTrace(); } notifyDestroyed(); } } }
通过上面的例子又要查看J2ME的API了,看看CommandListener接口定义的方法,这又涉及到接口的知识了,实现一个接口就必须实现该接口的所有方法,而且访问权限限制修饰符必须是public修饰。
发表评论
-
老外写的 StringTool
2009-10-26 16:22 1061/* * StringTool.java * * ... -
网络图片资源处理
2009-09-29 13:22 824编程中往往不仅需要处理本地的图片资源,还要处理网络中获取 ... -
J2ME Effects Library
2009-09-28 15:42 972J2ME ARMY KNIFE is, as far as I ... -
j2me中的MIDlet类说明
2009-09-28 13:14 1454在J2ME编程过程中,MIDlet ... -
j2me进度条Gauge模板
2009-09-28 13:11 1431这是很好的进度条的模板,里面涉及丰富的Java知识,值得很好研 ... -
使用调色板修改png图片
2009-09-28 13:07 1478这个算法是参考一位高人的文章,直接读取并修改png格式图片的调 ... -
SimpleCache
2009-09-28 12:39 790public class SimpleCache { ... -
StringTokenizer
2009-09-28 12:36 846public class StringTokenizer { ... -
编码技巧
2009-09-22 11:56 7291. 用StringBuffer ... -
混淆器
2009-09-22 10:49 989ProGuard - ... -
j2me游戏中使用记录管理系统
2009-09-22 10:32 571纪录管理系统(Record Ma ...
相关推荐
**Java 2 Micro Edition (J2ME) 入门指南** Java 2 Micro Edition(J2ME)是Java平台的一个子集,专为资源有限的设备设计,如移动电话、智能家电、手持设备等。J2ME为这些设备提供了一个标准化的开发环境,使得...
本压缩包提供了两本关于J2ME入门学习的电子书籍:《J2ME基础学习教程》和《j2mejiaocheng》。以下是对这两本书籍中可能包含的知识点的详细说明: 1. **J2ME架构**: - KVM(K Virtual Machine):J2ME的虚拟机,...
**J2ME入门_基础篇** Java 2 Micro Edition(J2ME)是Java平台的一个子集,专门设计用于资源有限的嵌入式设备,如移动电话、智能家电和手持设备。本篇将深入探讨J2ME的基础知识,帮助初学者快速入门。 ### 1. J2ME...
总的来说,J2ME入门书籍和课件涵盖了从基本概念、MIDlet生命周期、开发流程到用户界面设计的全面知识,是初学者理解和掌握J2ME开发的宝贵资源。通过学习这些内容,开发者可以创建出能在各种小型设备上运行的Java应用...
### J2ME程序开发新手入门九大要点详解 #### 一、J2ME中需要的Java基础知识 对于初学者而言,了解哪些Java基础知识是J2ME开发所必需的非常重要。这有助于学习者更高效地掌握核心技能,避免在不相关的领域浪费时间...
**J2ME开发入门** Java 2 Micro Edition (J2ME) 是Java平台的一个子集,主要用于嵌入式系统和移动设备,如早期的智能手机、功能手机和家用电器等。作为一个初学者,理解J2ME的基本概念和技术是至关重要的。 **1. ...
通过这个"J2ME入门示例Eclipse",你可以逐步熟悉J2ME开发环境,学习基本的编程技巧,然后逐渐深入到更复杂的J2ME应用开发,比如游戏开发、移动服务客户端等。记得多实践,理论结合实际,是成为J2ME开发大师的关键...
**J2ME从入门到精通** Java Micro Edition(J2ME)是Java平台的一个子集,主要用于嵌入式系统和移动设备,如早期的智能手机、电视盒和家用电器。本教程将带你逐步深入J2ME的世界,理解其基本概念、开发环境搭建、...
J2ME入门教程与LWUIT实例,主要给新手提供
**J2ME入门教程**通常会涵盖以下几个关键部分: 1. **环境设置**:首先,你需要安装Java SDK(包括J2ME SDK)和一个集成开发环境(IDE),如NetBeans或Eclipse,它们提供了对J2ME项目的良好支持。 2. **基础语法**...
入式设备及消费类电器的J2ME(Java 2 Micro Edition)等3个版本(如图1所示)。J2 ME推出之后,Motorola公司作为J2ME的主要支持者,第一个在自己生产的手机上移植了 KVM(千字节虚拟机),又领导全球手机厂家制定了...
### J2ME 开发环境配置指南 #### 一、Java环境配置 为了开始J2ME应用程序的开发,首先需要配置好Java开发环境。这包括安装Java Development Kit (JDK) 并设置相应的环境变量。 ##### **1.1 安装JDK** - 访问 ...
本教程将帮助初学者理解J2ME的基础概念和技术,以快速入门这个领域。 1. **J2ME架构** J2ME由两部分组成:配置(Configurations)和框架(Profiles)。配置定义了硬件和操作系统的基本需求,如Connected Limited ...
J2ME入门-(6)CLDCAPI章节主要探讨的是CLDC API,这是Java Micro Edition (J2ME) 平台上针对小型设备和嵌入式系统的轻量级Java应用开发的关键组件。CLDC(Connected Limited Device Configuration)API是J2SE的一个...
压缩包中的“J2ME入门最基础的资料,一看即会噢”很可能包含了关于这些概念的详细教程、示例代码和实践指导。对于初学者来说,这份资料将帮助他们了解J2ME的基础知识,学习如何创建MIDlets,使用AWT和MIDP进行UI设计...
J2ME,全称Java Micro Edition,是Sun Microsystems(现已被Oracle公司收购)为嵌入式设备和消费类电子产品设计的开发平台。它与J2SE(Java Standard Edition)和J2EE(Java Enterprise Edition)一同构成了Java技术...
(j2me入门的顺序,先看我传的,用手机入门j2me,然后再看这本,然后再看java编程那些事儿,希望能给大家一些帮助) 简单的引用! 小男孩尼克是个中学生,他从小就梦想着能拥有一部手机。上了中学后,这个梦想终于...
总的来说,"J2ME入门最基础的资料"将引导初学者逐步理解J2ME的结构、API、开发流程和实践技巧,为后续深入学习和开发打下坚实基础。通过详细阅读和实践提供的资料,你将能够快速入门J2ME,开发出自己的第一个MIDlet...
教程名称:J2ME手机开发编程菜鸟进阶视频教程课程目录:【】J2ME入门视频教程.05(TextField使用和事件【】J2ME入门视频教程.06(ChoiceGroup使用和获取选项值)【】J2ME入门视频教程.07(为ChoiceGroup添加图标友好...
本项目为J2ME的入门级学习代码工程,适合初学者进行实践操作,通过这个项目可以深入理解J2ME的基本概念和开发流程。 在J2ME中,主要有以下核心概念: 1. **配置与 profiles**:J2ME定义了多种不同的配置...