【 tulaoshi.com - 编程语言 】
                             
                            一、J2ME中需要的Java基础知识  
  现在有大部分人,都是从零开始学J2ME的,学习J2ME的时候,总是从Java基础开始学习,而且现在讲Java基础的书籍中都是以J2SE来讲基础,这就给学习造成了一些不必要的麻烦,  
![]()
![]()
![]()
![]()
!-- frame contents --   !-- /frame contents --
![]()
![]()
![]()
![]()
  下面将J2ME中用到的和不需要的Java基础知识做一个简单的说明。  
  J2ME中使用到的Java基础知识:  
   1、Java语法基础:包括基本数据类型、要害字、运算符等等  
   2、面向对象的思想:类和对象的概念,继续和多态等等。  
   3、异常处理  
   4、多线程  
  J2ME中没有用到的Java基础知识:  
   1、JDK中javac和java命令的使用   
   2、Java基础中的很多类在J2ME中没有,或者类中的方法做了大量的精简。所以建议在J2ME中熟悉类库。  
   3、Applet、AWT、Swing这些知识在J2ME中根本使用不到。  
  简单说这么多,希望学J2ME的朋友们能少走一些弯路,不足之处希望大家积极指正和补充。   
  二、J2ME中暂时无法完成的功能  
  列一些J2ME中暂时无法完成的功能,希望大家能积极补充:  
   1、在手机中不更改代码实现移植,主要指游戏。  
   2、动态修改按钮文字。  
   3、在Canvas上接受中文输入。  
   4、操作本地资源、例如地址本、已收短信息等。  
   5、制作破坏性的手机病毒。  
   6、其他等待大家来补充。  
  三、J2ME的跨平台性  
  J2ME技术源于Java,所以也具有JVM的优势,可以在支持Java的平台上进行移植,但是现在的J2ME技术在跨平台上却做的很糟糕,我们来简单看一下原因:  
  1、手机的屏幕尺寸不一:  
  这个主要在界面制作上。假如你使用的是高级用户界面,比如你做的是应用开发或者用户登陆、用户注册这样的通用功能时,一般没有什么问题。  
  假如你使用的是低级用户界面,比如你做的是游戏,那么你就需要考虑这个问题了。  
  2、厂商的扩展API不统一:  
  例如Nokia的扩展API类库UI系列,在别的手机上或者没有实现,或者包名不同等等。  
  3、手机平台上实现的bug:  
  例如Nokia的7650在实现双缓冲上有bug,那么在这种机型上运行的软件就不能使用双缓冲。其他NOKIA上的一些bug,可以参看:http://blog.csdn.net/Mailbomb/archive/2005/03/24/329123.ASPx  
  4、手机性能问题。  
  不同手机的可用内存、最大jar文件都有要求,例如Nokia S40的大部分手机支持的最大jar文件为64K,最大可用内容为210K。  
  所以现在的手机软件,非凡是游戏都提供支持的机型列表,也才有了手机游戏移植人员的存在。  
  四、学习J2ME可以从事的工作种类  
  现在J2ME技术可以说相当的火暴,这里介绍一些学好了J2ME之后可以从事的工作的种类:  
  1、J2ME游戏开发人员  
  根据游戏策划或者文档要求,在某种特定的机型(以Nokia S40或S60居多)开发游戏程序。这是现在大部分J2ME程序员从事的工作。  
  需要熟练把握:高级用户界面、低级用户界面、线程,假如是网络游戏,还需要熟练网络编程。  
  2、J2ME应用开发人员  
  现在的移动应用还不是很多,但是还是出现了一些,非凡是移动定位以及移动商务相关的内容。需要熟练把握:高级用户界面、线程和网络编程。  
  3、J2ME游戏移植人员  
  参照源代码,将可以在一个平台上可以运行的游戏移植到其他平台上去。例如将Nokia S40的游戏移植到S60上,或者索爱的T618等等。