上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.4 课后习题
一、选择题
1.MIDlet-Version表示( )。
A.MIDlet的版本号 B.MIDlet程序包的名称
C.数据存储的最小字节 D.MIDlet需要哪一种J2ME简表
2.下列哪个不是清单文件中必有的属性?( )
A.MIDlet-Name B.MIDlet-Jar-Size
C.MIDlet-Vendor D.MIDlet-Icon
3.下列哪个不是MIDlet类中定义的抽象方法?( )
A.构造方法 B.destroyApp()
C.pauseApp() D.startApp()
4.下列哪个不是MIDlet生命周期的状态?( )
A.暂停状态 B.准备状态
C.运行状态 D.销毁状态
5.当MIDlet生命周期处于( )状态时释放资源,停止正在执行的线程。
A.暂停 B.准备 C.运行 D.销毁
6.notifyPaused()方法是指将MIDlet生命周期进入( )状态。
A.暂停 B.准备 C.运行 D.销毁
7.在进行项目打包时,创建混淆包的目的不包括( )。
A.对MIDlet进行一定程度的保护 B.增加反编译的难度
C.混淆后的包通常会更小 D.混淆后程序会更整洁
8.下列哪个是J2ME应用程序的安装程序?( )
A.MIDlet B.JAD C.JAR D.Java
二、应用题
1.MIDlet的生命期有哪些?对应的方法是什么?这些方法是在什么时候执行的?
2.程序分析。根据以下的代码,回答后面的问题。
import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class HelloMIDlet extends MIDlet { private Display display; public HelloMIDlet() { System.out.println("Constructor") ; display = Display.getDisplay(this); } public void startApp() { System.out.println("startApp Called") ; Form t = new Form("画面"); display.setCurrent(t); } public void pauseApp() { System.out.println("pauseApp Called") ; } public void destroyApp(boolean unconditional) { System.out.println("destroyApp Called :" + unconditional) ; } }
(1)以上代码的基本结构是什么?
(2)主类、超类名分别是什么?
3.建立第一个J2ME项目并执行。
4.将程序分别打成普通包和混淆包。