android笔试汇总

1.关于线程下面描述错误的是:( D )

A. 如果线程处于死亡状态,则它不是Runnable线程

B. 线程可以将控制权交给较低优先级的线程

C. 在Java中,较高优先级的Runnable线程应抢在较低优先级线程前面执行 

D. 分时技术允许线程一直运行,直到时间片内的时间用完。然后执行相同优先级的其它线程

 

2. 下列哪个方法能将Sprite对象进行旋转 : ( A )

A. setTransform (...)

B. setPosition(...)

C. setFrameSequence (...)

D. setPosition(...)

 

3 .下列不属于PNG图像格式缺点的是( B )

A. PNG图像格式不支持单个档案存储多张图片

B. PNG图像格式支持单个档案存储多张图片

C. PNG图像格式不支持CYMK模式

D. PNG图像格式没有存储DPI信息

 

4. 下列哪一项属于J2ME中所使用的虚拟机类型 : ( C )

A. JVM (java虚拟机)

B. DVM

C. CVM(或KVM

D. Card VM

 

5. 键盘事件处理方法中,以下哪个方法是用来处理键盘按键的释放事件的 ( B )

A.keyPressed(int keyCode)

B.keyReleased(int keyCode)

C.keyRepeated(int keyCode)

D.pointerPressed(int x, int y)

 

6. 下列中不属于CLDC这种配制的设备是:( D )

CLDC -“手持设备” CDC -“从墙取电设备

A. PDA

B. 手机

C. 寻呼机

D. 机顶盒

 

7. 编写语句,将下面各种范围内的随机整数赋给变量n,赋值正确的是:( 

n<=x<=m 则 x=(int)(   n   + Math.random() * (m-n+1)) 取值的最小数字                              取值范围         

注:如果直接random的话数字从0开始

A.1小于等于n, n小于等于

解:n = (int)(1+Math.random()*2);

B.1小于等于n, n小于等于100

解:n = (int)(1+Math.random()*100);

C.0小于等于n, n小于等于9

解:n = (int)(Math.random()*10);

D.以上解都对

 

8. 下列不属于CLDC1.1核心类库与J2SE核心类库的主要区别的是: ( A )

A. 不支持线程组或守护线程

B. 不支持浮点数据类型

C. 不支持弱引用

D. 有限的错误处理

 

9. 下列选项中不属于MIDlet套件的是 ( C )

A. 附在JAR文件中Java类文件 

B. 描述JAR文件内容的清单文件

C. CVM虚拟机

D. JAM(应用程序管理器)

 

10. 描述JAR文件内容的清单文件manifest.mc中不必须的属性是: ( A )

A. MIDlet-Info-URL

B. MIDlet-Vendor

C. MIDlet-Name

D. MIDlet-Version

 

11. J2ME使用配置和简表指定Java运行时环境,下列属于简表的功用的是:( D )

A. 简表通过添加特定于域的类来定义应用程序

B. 简表是针对某一系列设备提供的开发包(API)的集合

C. 简表是针对特定设备提供的类库

D. 以上描述都正确

 

12. 以下是一个创建记录仓库的示例,描述正确的是: ( D )

       private RecordStore rs = null;

       try{

       rs = RecordStore.openRecordStore(“testRMS”,false);

       }

       catch(Exception e){}

 

A.该示例创建记录仓库名为testRMS,如果该记录仓库存在则不作任何处理

B.该示例创建记录仓库名为testRMS,如果该记录仓库存在则打开

C.该示例创建记录仓库名为testRMS,如果该记录仓库不存在则抛出异常

D.该示例创建记录仓库名为testRMS,如果该记录仓库不存在则不作任何处理

 

13. 属于JAD描述文件与JAR清单文件中都必须包含的属性是: ( B )

A. MIDlet-Jar-URL

B. MIDlet-Version

C. MIDlet-Jar-Size

D. MIDlet-Icon

 

14.下面属于J2ME体系结构中的内容是 : ( D )

A. Configurations

B. Profiles

C. Optional Packages

D. 以上都是

 

15. 下列中不属于CDC这种配制的设备是 ( D )

 CLDC -“手持设备” CDC -“从墙取电设备

A. 机顶盒

B. 车载计算设备

C. 数字电视

D. PDA

 

16. 继承MIDlet类必须复写的方法是 : ( D )

A. startApp()

B. pausedApp()

C. destroyedApp(boolean u)

D. 以上都要复写

 

17. J2ME用户界面组件分为高阶用户界面组件和低阶用户界面组件,以下描述正确的是:( D )

A.Screen类属于低阶用户界面组件

B.Canvas类属于高阶用户界面组件

C.Screen类和Canvas都属于高阶用户界面组件

D.Displayable类是Screen类和Canvas类的父类

 

18. J2ME的MIDP1.0 标准版本,支持的图像格式是:( B )

A. bmp

B. png

C. gif

D. jpg

 

19.在Command之中共定义了八种命令型态,以下选项中列举了其中几个,其中优先级最高的是 :( A ) //數字越低,優先級越高

A.Command.BACK 优先级 2

B.Command.ITEM 优先级 8

C.Command.HELP 优先级 5

D.Command.STOP 优先级 6

 

20.与异常有关的一些方法,下列描述正确的是:( 

A. printStackTrace 方法将堆栈记录信息输出到流中,而不是输出到标准错误流中

B. getStackTrace 方法向标准错误流输出一个错误信息,其中包含异常的类名

C. getMessage 方法返回异常所存储的描述性字符串

D. 以上描述都对

 

21.在List列表类中定义了三种选择类型,其中代表单选模式的选项是 : ( A )

A.exclusive

B.Implicit

C.multiple

D.以上都不是

 

22.List列表类中定义了三种选择类型,其中哪一个能够呼叫commandAction()函数 : ( A )

A.Implicit

B.exclusive

C.multiple

D.以上都不可

 

23.TextBox类用于输入数据,其中该类针对输入类型定义了几个限制约束 ,其中代表只能输入数字的是: ( A )

A.NUMERIC

B.DECIMAL

C.PHONENUMBER

D.URL

 

24.TextBox类用于输入数据,其中该类针对输入类型定义了几个限制约束 ,其中可以实现任意输入的是: ( A )

A.ANY

B.URL

C.EMAILADDR

D.以上均可

 

25.使用TextBox实现输入框时,决定使用的限制类型为只能输入数字类型的密码限制,下面编写正确的是: ( D ) TextField.NUMERIC|TextField.PASSWORD

A.SENSITIVE|PASSWORD

B.UNEDITABLE|PASSWORD

C.NUMERIC|PASSWORD

D.以上都不对

 

26.属于能够操纵List列表类中元素的方法是: ( D )

A.append

B.delete

C.insert

D.以上均是

 

27.以下描述正确的是:( 

A. 抽象类的所有方法都必须是抽象方法

B. 子类变量引用超类对象的做法是危险的

C. 内部类不允许访问包装类的成员

D. 父类是抽象类,子类要成为具体类,就必须实现父类的所有方法

 

28.关于ALert类下面描述正确的是 : ( D )

A. 先发出一段声音,然后将自己秀在屏幕上,过一段时间之后,它会自动跳回之前的画面

B. 必须在显示Alert之前定义好它可以跳回的画面,否则会发生异常

C. 如果想要Alert一直保持在自己的画面上,就要使用方法FOREVER()

D. 以上都对

 

29.Form是J2ME里面比较重要的容器类型,它必须配合Item类来使用,不属于Item类的子类的是 : ( D )

A.TextField 

B.StringItem

C.ChoiceGroup

D.TextBox

 

30.Item类的子类中,哪一个在与Form类结合使用的时候能生成与使用TextBox时相似的效果 : ( B )

A.DateField

B.TextField 

C.StringItem

D.Gauge

 

31.关于abstract抽象类描述正确的是:( A )

A.不能生成抽象的构造函数

B.可以生成抽象的static方法

C.允许生成private的抽象方法

D.以上描述都对

 

32.StringItme类和Form类结合使用时,采用HYPERLINK或者BUTTON外观模式的条目并不能干任何事情,要让Item有效需要作哪些事情:( C )

A.程序必须至少添加一个命令到条目中

B.程序必须至少添加一个命令到条目中,最好命令被设置成默认的命令

C.实际实现了超级链接或者按钮的动作的ItemCommandListener必须被注册

D.以上都要做

 

33.Item类的子类中,哪一个在与Form类结合使用的时候能生成与使用List时相似的效果 : ( C )

A.Spacer

B.Gauge

C.ChoiceGroup

D.TextField 

 

34.当使用ChoiceGroup类与Form类结合使用的时候,采用类型限制时,哪一种类型不能使用,如果使用会发生异常 : ( A ) P168

A.IMPLICIT

B.EXCLUSIVE

C.MULTIPLE

D.以上都不可

 

35.Item类的子类中,哪一个在与Form类结合使用的时候能生成进度条的效果 : ( C )

A.Spacer

B.ImageItem

C.Gauge

D.DateField

 

36. 代码混淆最不适合在什么时候采用 ( A )

A. 手机程序测试的时候

B. 手机程序编写的时候

C. 手机程序运行之前

D. 手机程序将要发行之前

 

37. List 和 ChoiceGroup类都实现了哪一个接口( B )

A.Group

B.Choice

C.GroupChoice

D.以上都不是

 

38.J2ME中所有高阶图形用户界面组件的父类是:( C )

A.Canvas类

B.Form类

C.Screen类

D.Graphics类

 

39.J2ME中所有用来处理低阶图形用户界面组件的父类是:( B )

A.Form类

B.Canvas类

C.List类

D.Screen类

 

40. 一张png格式的图片文件a.png,图片宽70像素,高20像素,被用来创建Spirte,程序如下,下面描述正确的是 : ( D )

       Image img;

       try{

              img = Image.createImage("/a.png");

       } 

       catch(Exception e){}

 

       Sprite sprite = new Sprite(img,20,20);

 

A. 图片被按照每块宽20像素,高20像素的比例分割成三个画面

B. 图片被按照每块宽20像素,高20像素的比例分割出一个画面

C. 图片被该Sprite所使用,并将该Sprite的图像描绘到屏幕坐标(20,20)的位置上。

D. 出现异常

 

41.下面对于Display类描述正确的是:( B )

A.Display对象在每个MIDlet之中只有2

B.Dispaly对象在每个MIDlet之中只有1

C.Display对象在每个MIDlet之中可以有多个

D.Display对象在每个MIDlet根据不同情况可以设置多个

 

42.Display类就像一个画面管理员,获得Display类对象的方法是(参数略)( D )

A.getDisplayable(...)

B.getCurrent(...)

C.setCurrent(...)

D.getDisplay(...)

 

43.执行repaint()方法可以直接调用哪个方法:( C )

A.run();

B.start();

C.paint();

D.doStart();

 

44. 下面关于LayerManager类描述正确的是: ( A )

A. 一个程序中只允许使用一个LayerManager

B. 一个程序中可以使用多个LayerManager

C. LayerManager类只允许添加一个Sprite类的实例作为图层管理的一部分

D. LayerManager类可以添加LayerManager类的实例作为图层管理的一部分

 

45.根据下面代码判断变量i最后的值(MIDlet主程序及头部import开发包部分及其他所有代码省略)( A )

public class test extends Canvas

{

       int i;

       public test()

       {

              i = getWidth();

              i = getHeight();

       }

 

       public void paint(Graphics g)

       {

              

              i = i;

       }

}

A.i的值是当前手机模拟器屏幕的高

B.i的值是当前手机模拟器屏幕的宽

C.i的值是null;

D.i的值是0;

 

46. 以下对记录仓库描述正确的是 : ( D )

A. 数据写入记录仓库后,记录ID号唯一,删除一条记录后,该记录ID号可以重新使用

B. 记录仓库中的记录ID不是唯一的可以重复使用

C. 一旦数据写入记录仓库之后,其Record ID 就不会再改变(如果删除数据呢?)

D. 以上描述都不对

 

47.使用低级图形用户界面组件需要继承哪一个类: ( D )

A.Graphics类

B.Screen类

C.Displayable类

D.Canvas类

 

48.下列方法中哪一个方法能实现在屏幕上描绘出一条虚线(其他部分程序代码省略)( C )

    public void paint(Graphics g)

    {

        g.setColor(255,255,255);

        g.fillRect(0,0, getWidth(), getHeight());

 

       /* 代码段A */

        g.setColor(255,0,0);      

        g.drawLine(20, 20, 100,20);

 

       /* 代码段B */

        g.setColor(125, 125,125);

        g.drawLine(20,25,100,50);

        g.setStrokeStyle(Graphics.SOLID);

 

       /* 代码段C */

        g.setColor(125, 125,125);

        g.drawLine(20,30,100,50);

        g.setStrokeStyle(Graphics.DOTTED);

 

       /* 代码段D */

        g.setColor(255,255,255);

        g.drawLine(20,50,100,50);

        

   }

A. 代码段A

B. 代码段B

C. 代码段C

D. 代码段D

 

49. 以下方法哪一個可以判断屏幕颜色是否彩色( B )

A. setColor(...)

B. isColor(...)

C. getColor(...)

D. ifColor(...)

 

50. Layer类是一个抽象类,它有两个子类分别是: ( C )

A. TiledLayer类和LayerManager

B. TiledLayer类和GameCanvas

C. Sprite类和TiledLayer

D. LayerManager类和Sprite

 

51. 哪个方法可以实现在屏幕上描绘一个实心的扇形 ( A )

A. fillArc(...)

B. drawArc(...)

C. drawRect(...) 

D. fillRect(...)

 

52. 蓝牙和802.11b技术都属于短程通讯技术,以下描述错误的是: ( D )

A. 蓝牙和802.11b都是无线技术,并且都选用了2.4GHz的频谱

B. 802.11b主要是用来连接耗电的大型设备,如个人计算机及手提电脑等

C. 蓝牙主要是用来连接耗电极小的小型设备,如PDA和手机等等

D. 蓝牙技术的数据交流的速度达到11Mb/s,距离可达100

 

53. 利用Runnable接口实现线程必须复写run()方法,这个run()方法是由哪一个方法调用的( A )

A. start()

B. doStart()

C. startApp()

D. doRun()

 

54. 想要在屏幕正中心显示一个Image图片(创建Image类型对象img加载图片过程代码省略,应选择下列哪一项 : ( C )

A. drawImage(img, 0, 0, Graphics.TOP|Graphics.VCENTER)

B. drawImage(img, getWidth(), getHeight(), Graphics.TOP|Graphics.VCENTER)

C. drawImage(img,getWidth()/2,getHeight()/2,Graphics.VCENTER|Graphics.HCENTER)

D. drawImage(img, 0, 0, Graphics.VCENTER|Graphics.VCENTER) 

 

55. 在屏幕上描绘一个弧线的方法是(其它代码省略) : ( A )

A. drawArc(10,10,0,50,45,90);

B. fillRoundRect(5, 80,100,20,20,20); 

C. drawRect(5, 5, 100,20);

D. fillRect(5, 30, 100,20);

 

56. 以下哪一个方法可以设置屏幕的颜色 ( D )

A. isColor(...)

B. getColor(...)

C. ifColor(...)

D. setColor(...)

 

57. 在突发事件处理中,比如:来电话了,屏幕会被系统画面所覆盖,当恢复原状时,就会调用原本的画面,此时系统会调用哪个方法( A ),屏幕被系统覆盖时会调用哪个方法( B )

A. showNotify ( ) 

B. hideNotify ( )

C. notifyPaused( )

D. notifyDestroyed( )

 

58.TiledLayer类中setCell方法作如下使用,下面描述正确的是(其它代码全部省略):( B )

              Image titledImage;

              try {

                     

                     titledImage = Image.createImage("/title1.png");

 

              } catch (Exception e) 

 

              TiledLayer background = new TiledLayer(3,6,titledImage,64,32);

 //將圖層分爲3列,6行,圖像titledImage被分塊為寬高為6432

              background.setCell(2,3,2);

      //在圖層的第2列,第3行放入編號為2的分塊圖片(分塊圖片從1開始編號,

0表示不填充)

A. 将图层序列中第2行第3列的位置上的图像设置为被分割后的图象序列中第2个画面的图象

B. 将图层序列中第3行第2列的位置上的图像设置为被分割后的图象序列中第2个画面的图象

C. 将图层序列中第3行第2列的位置上的图像设置为不填充

D. 以上均不对

 

59. 键盘事件处理方法中,以下哪个方法是用来处理键盘按键的长时间按住事件的 ( C )

A.keyPressed(int keyCode) 

B.keyReleased(int keyCode)

C.keyRepeated(int keyCode)

D.pointerPressed(int x, int y) 

 

60.Canvas 类别里头定义了几个常数,分别代表了手机键盘上与Game 键盘代码(方向键)相关的常数,其中代表select键的是下面哪个选项 : ( B )

A. GAME_A

B. FIRE

C. DOWN

D. RIGHT

 

61.在触摸屏事件处理方法中,以下哪个方法是用来处理触目屏幕的拖拽事件的方法 : ( C )

A.pointerPressed(int x, int y)

B.pointerReleased(int x, int y)

C.pointerDragged(int x, int y)

D.pointerRepeated(int x,int y)

 

62.创建一个不可修改Image型对象的方法是(其余代码省略) : ( A )

A. Image.createImage("/img/a.png")

B. Image.createImage(InputStream stream) 

C. Image.createImage(Image source) 

D. 以上均可

 

63. 取得代表系统预设所使用字型的Font对象的方法是:( A )

A. Font.getDefaultFont()

B. Font.getFont(int face, int style, int size)

C. Font.getFont()

D. Font.getFontFace();

 

64. 来取得代表特定字型的Font对象的方法是: ( A )

A. Font.getFont(int face, int style, int size)

B. Font.getDefaultFont()

C. Font.getFont()

D. Font.getFontFace();

 

65. 下面哪一个选项是用来设置可以获取一个字体字型的外观为粗体: ( B )

A. Font.FACE_SYSTEM

B. Font.STYLE_BOLD

C. Font.STYLE_ITALIC

D. Font.SIZE_LARGE

 

66. getBaselinePosition()方法可以用来获得要显示的字符串的什么位置( C )

A. 字符串高度

B. 字符串宽度

C. 字符串基线

D. 字符串长度

 

67. 以下各项哪些类和接口可以实现线程的运作( D )

A. Runnable接口

B. Thread 类

C. TimerTask类

D. 以上均可

 

68. 以下是一个利用Timer类和TimerTask类实现线程的一个例子(其余代码和类的设计省略),判断下面代码能实现什么功能:( B )

       Timer timer = new Timer(); //生成一个Timer类的对象

       timerTask tT = new timerTask() ; //该类继承了TimerTask

       timer.schedule(tT, 100, 1000);

 

A. 程序启动后等待1秒以后,每隔100毫秒运行一次TimerTask类的run()方法

B. 程序启动后等待100毫秒以后,每隔1秒运行一次TimerTask类的run()方法

C. 程序启动后等待10秒以后,每隔1000毫秒运行一次TimerTask类的run()方法

D. 程序启动后等待1秒以后,每隔10秒运行一次TimerTask类的run()方法

 

69. 在MIDP2.0中新增加了一个专门为游戏开发设计的开发包,下面哪一项正确的导入了这个开发包: ( C )

A. import javax.microedition.media; 

B. import javax.microedition.rms; 

C. import javax.microedition.lcdui.game;

D. import javax.microedition.lcdui; 

 

70. GameCanvas类继承于哪一个类: ( C )

A. Screen类

B. MIDlet类

C. Canvas类

D. Graphics类

 

71. GameCanvas类获得画布中脱机屏幕上用于作图的Graphics对象的方法是: ( B )

A. flushGraphics()

B. getGraphics()

C. getGraphics(Graphics g)

D. flushGraphics(Graphics g)

 

72. 哪个方法可以要求刷新屏幕,将脱机屏幕上的图像绘制到真实屏幕上 : ( C )

A. paint(Graphics g)

B. flush()

C. flushGraphics()

D. Graphics(Graphics g)

 

73.不属于图形输入设备的是:( A )

A.键盘 

B.摄像机

C.触摸板

D.鼠标

 

74.下列方法中哪一个方法能实现在屏幕上描绘一个实心的直角矩形:( B )

A.drawRect(int x, int y, int width, int height) 

B.fillRect(int x, int y, int width, int height) 

C.drawRoundRect(int x, int y, int width, int height,int arcWidth, int arcHeight) 

D.fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) 

 

75. 下列方法中哪个方法是Sprite类中用来设置对准点的方法: ( B )

A. setRefPixelPosition(int x,int y)

B. defineReferencePixel (int x,int y)

C. setVisible(boolean visible) 

D. setPosition(int x, int y)

 

76.判断下列语句哪个正确( 

A.在线程休眠时,sleep方法会占用处理器时间。

B.将方法声明为synchronized,就可以确保不会发生死锁

C.不提倡使用Thread类的suspend方法,resume方法和stop方法.

D.以上描述都正确

 

77. 下列方法中哪个方法能够正确设置Sprite对象帧序列(其它代码省略): ( C )

       int array = {0,1,2,3};

 

A. setRefPixelPosition( array )

B. defineReferencePixe ( array )

C. setFrameSequence (array )

D. setPosition( array )

 

78. 下列那个方法不能将Sprite对象移动到指定屏幕坐标位置(x,y)坐标(其它代码省略):( C )

       int x = 50;

       int y = 50;

A. setRefPixelPosition(x,y)

B. setPosition(x,y)

C. setFrameSequence(x,y)

D. setPosition(x,y)

 

79. 在GameCanvas中定义了静态常量表示哪个按键是否被按下,其中表示select按键的是:( B )

A. KEY_STAR 

B. FIRE_PRESSED 

C. GAME_STAR_PRESSED 

D. FIRE 

 

80. 下面是获取按键键值并进行判断的程序代码(其它程序代码全部省略),判断语法正确的是: ( C )

       Int keyState = getKeyStates();

       

A.if( ( keyState | LEFT_PRESSED ) != 0 )

B.if( ( keyState ! LEFT_PRESSED ) != 0 )

C.if( ( keyState & LEFT_PRESSED ) != 0 )

D.if( ( keyState || LEFT_PRESSED ) != 0 )

 

81. 以下代码将对Sprite对象做怎样的操作: ( A )

       setTransform(TRANS_ROT90)

A.顺时针旋转90

B.逆时针旋转90

C.水平翻转后顺时针旋转90

D.水平翻转后逆时针旋转90

 

82. 下面方法中,哪一个能使Sprite精灵先水平翻转再顺时针旋转180: ( C )

A. setTransform(TRANS_MIRROR_ROT90*2)

B. setTransform(TRANS_ROT180)

C. setTransform(TRANS_MIRROR_ROT180)

D. 以上均可

 

83. 根据以下代码,判断以下关于创建TiledLayer类创建实例的描述正确的是(假设图片正好适用该程序) : ( B )

       Image img;

       try{

              img = Image.createImage("/a.png");

       } 

       catch(Exception e){}

 

       TiledLayer tl = new TiledLayer(4,3,img,10,15);

 

A. 该程序创建的地图行列数是,43

B. 该程序创建的地图行列数是,34

C. 该程序创建的地图行列数是,1015

D. 该程序创建的地图行列数是,1510

 

84.下列有关J2SEGraphics类及方法描述正确的是: ( B )

A. Graphics类的drawOval方法的前两个参数指定椭圆的圆心坐标

B. 在Java坐标系统中,x坐标是从左向右增大的

C. getSize方法以厘米为单位返回当前字体的大小

D. 像素坐标(0,0)位于显示器的中心

 

85.远程通讯技术中基本连接框架可以采用多种方式与外界沟通,下面列出了几种连接方式,其中不能使用其进行连接的是:( C )

A.使用FTP与外界进行沟通

B.使用HTTP与外界进行沟通

C.使用序列阜与外界进行沟通

D.使用Datagram与外界进行沟通(数据报,UDP

 

86. 根据以下代码判断,创建TiledLayer类的实例时,所用的图层图像画面被进行了怎样的分割 (假设图片正好适用该程序): ( B )

       try{

              Image img = Image.createImage("/a.png");

       } 

       catch(Exception e){}

 

       TiledLayer tl = new TiledLayer(4,3,img,15,10);

 

A. 图像被按照宽10像素,高15像素的比例进行分割

B. 图像被按照宽15像素,高10像素的比例进行分割

C. 图像被按照宽 4像素,高 3像素的比例进行分割

D. 图像被按照宽 3像素,高 4像素的比例进行分割

 

87. 关于Sprite类碰撞检测方法描述正确的是 : ( B )

Sprite与SpriteSpriteTiledLayerSpriteImage

A. 可以实现Sprite对象与Layer对象之间的碰撞检测

B. 可以实现Sprite对象与TiledLayer对象之间的碰撞检测

C. 可以实现Sprite对象与LayerManager对象之间的碰撞检测

D. 以上描述都正确

 

88. 在制作画面滚动程序时,关于可视窗口与全景地图的概念描述正确的是: ( D )

A. 全景地图就是整个手机屏幕能看到的画面范围

B. 可视窗口是指能够在手机屏幕范围内看见的画面

C.  全景地图必须与手机屏幕大小完全一样

D. 可视窗口是程序控制后所能见到的游戏画面相对于手机屏幕的最大范围

 

89. 以下选项中,那一个是LayerManager类中设置可视窗口的方法:( C )

A. setWindow(int x, int y, int width, int height) 

B. setWindowView(int x, int y, int width, int height) 

C. setViewWindow(int x, int y, int width, int height) 

D. setView(int x, int y, int width, int height) 

 

90. J2ME中实现声音效果是通过Player类和Manager类结合使用完成的,以下创建Player类型对象方法正确的是: ( D )

A. Player p = Manager.createPlayer("http://abc.wav");

B. InputStream is = this.getClass().getResourceAsStream("/a.wav");

   Player player = Manager.createPlayer(is,"audio/x-wav");

C. Player p = Manager.createPlayer("/abc.wav");

D. 以上均可

 

91. 下面对记录管理系统(Record Management System, RMS)描述正确的是 : ( B )

A. RMS按照给定数据类型进行存储,输入的类型与存储的类型完全一致。

B. RMS按照二进制数据(字节排列)的方式进行存储。

C. RMS与其它的数据库管理系统一样,数据以表格的形式存储成多行多列。

D. RMS可以进行随机存储

 

92. 当一个记录仓库不再使用时就要关闭或删除它,以下描述正确的是: ( C )

A.在删除记录仓库之前必须先要清空记录仓库中的记录

B.在删除记录仓库之前应确保它是处于开启状态的,否则抛出异常。

C.在删除记录仓库之前应确保它是处于关闭状态的,否则抛出异常。

D.以上描述都不对

 

93. 使用RecordComparator接口实现记录之间的比较,该接口中定义了三个属性,假设记录1与记录2进行比较,对于比较结果以下描述正确的是: ( C )

A. RecordComparator.PRECEDES 表示记录1与记录2比较后的位置是记录2之后

B. RecordComparator.FOLLOWS 表示记录1与记录2比较后的位置是记录2之前 

C. RecordComparator.EQUIVALENT 表示记录1与记录2比较后的位置是与记录2相等

D. 以上描述都正确

 

94. 双缓冲技术解决的是什么问题 : ( C )

A. 记录仓库中用于数据缓冲的技术

B. 解决图片大小问题

C. 解决屏幕闪烁问题的技术

D. 以上描述都错

 

95. 蓝牙设备一般被组成一个一个的pico-net(兆分之一网),下面选项关于蓝牙拓扑结构描述正确的是: ( B )

A.每个pico-net包括七个主人(master)及最十七个仆人(slave)

Each piconet has one master and up to 7 simultaneous slaves (> 200could be parked)

B.主人设备是指那个燃起通讯的一方。不同pico-net之间的设备也可以通讯

C.有一个主人和多个仆人的情况下,主人和仆人之间采用的是点对点的通讯方式

D.以上描述都错

 

96.远程通讯的基本连接框架中不管采用哪种方式和外界沟通,都必须使用Connector类别的什么方法:( C )

A.connect()

B.start()

C.open()

D.getConnect()

 

97.开发手机游戏,提高游戏性能的手段有很多,以下描述错误的是: ( A )

A. 增加面向对象的代码

B. 减少第三方库的使用

C. 最少的通讯

D. 垃圾回收

 

98. 下列各语句的结果值描述正确的是:( 

A. x = Math.abs(7.5) 结果:x=7.5 //Math.abs(a) a的绝对值

B. x = Math.floor(7.5) 结果:x=7.0 //Math.floor(a) 求不大于a的最大整数

C. x = Math.abs(0.0) 结果:x=0.0

D. 以上描述都对

 

99.判断下面代码哪一个正确:( 

A. final int ARRAY_SIZE = 5;

   ARRAY_SIZE = 10;//常数不能被重新赋值

B. 设 int b[] = new int[10];

   for(int i = 0;i <= b.length; i++)

{

b[i]=i;

}//循环0-10,数组溢出

C. 设 int a[][] = { {1,2}{3,4} };

   a[1,1] = 5;

//正解:int a[][]={{1,2},{3,4}};

a[1][1]=5;

D. 以上都错

 

100.下列有关J2SE中有关方法的使用书写正确的是:( 

A. g.getFont("SansSerif"); 用于获取当前字体,不能带参数

B. g.erase(x,y,w,h); //清除位于(x,y)点的矩形

C. Font f = new Font("serif",Font.BOLD,12); 

D. g.setColor(Color.Yellow); //将当前颜色设置为黄色

4. 下列哪一项属于J2ME中所使用的虚拟机类型 : ( C ) 

A. JVM (java虚拟机

B. DVM 

C. CVM(或KVM) 

D. Card VM 

1. 针对桌面开发和低端商务应用的Java 2平台版本为:(

A. J2EE

B. J2ME

C. J2SE

2. J2ME体系架构包括:(

A. Java语言、Java编辑器、Java虚拟机

B. Configuration、Profile、可选包

C. CLDC 、MIDP WMA

D. CDC 、Profile、可选包

3. CLDC要求的可变内存数量为:( 

A. 至少320K

B. 至少160K

C. 至少258K

D. 至少32K

4. Configuration必须与()一起使用

A. Profile

B. 虚拟机

C. 可选包

D. Java编辑器

5. J2ME中,预审核在class文件中加入了______属性:( C )    P18

A. MIDlet

B. HeapMap

C. StackMap

D. Stack

7.使用模拟器进行J2ME程序开发,具有如下优点( BCD  )(多选)

A.使用开发者不需要在实际设备上调试程序

B.提高开发效率

C.简化开发过程

D.降低开发难度

8.在java语言中,异常的来源有(AC )(多选)  P37

A.程序代码产生的

B.硬件产生的

C.JAVA运行时系统产生的

D.操作系统产生的

9.应用程序发布的基本单位是( 

A.MIDlet Suite

B.  Jar文件

C.MIDlet

D.Jad文件

10.应用程序管理系统启动程序的基本单位是()  P43

A.MIDlet

B.MIDlet Suite

C.Jar文件

D.Jad文件

11.一个叫com.sun.microedition.Test的类放置在JAR文件中应为:(

A. /microedition/Test.class

B. sun/microedition/Test.class

C.com/sun/microedition/Test.class

D.com/sun/microedition/Test/class.class

12.下面哪种情况下MIDlet进入销毁状态?( )  P48

A.AMS调用了MIDlet.pauseApp()方法

B.AMS调用了MIDlet.destroyApp()方法

C.当MIDlet调用MIDlet.notifyDestrored()成功返回时

D.当在活动状态时,startApp()方法抛出MIDletStateChangeException异常时     //暂停

13.受信任的MIDlet Suite的安全机制依赖于( 

A.沙箱模型

B.受信任的域

C.保护域

D.黑盒模型

14.在应用描述文件中,必须包含如下属性:( ABCDE )(多选)

A.MIDlet-Vendor

B.MIDlet-Jar-URL

C.MIDlet-Version

D.MIDlet-Jar-size

E.  MIDlet-Name

15.在MIDP中,用于需要对具体位置和图象元素的精确控制的是:( 

A.高级API

B.底层API

C.异步API

D.同步API

17.获取Displayable对象的Ticker需要调用下面的哪个函数?(

A.getTickerString

B.getTicker

C.getString

D.getTicker

18.设置TextBox约束的函数为:()        P76

A.SetStringConstraints

B.setConstraints

C.setTextConstraints

D.setConstraint

19.获取Jar中的资源的方法为:(P84

A.getJar

B.  getJarAsResource

C.getResource

D.getResourceAsStream

20.在MIDP2.0中,要求必须支持的编码方式为:( P85

A.IS08859

B.UTF-8

C.GB2312

D.UNICODE

21.在TIME模式下,MIDP要求DateField中的时间必须是相对于( )的时间         P99

A.1970711

B.1965110

C.1970110

D.1960110

22.缺省情况下Alert的缺省命令是:( P107  //缺省DIMISS_COMMANDCommandListener

A.DEFAULT_ALERT_COMMAND

B.  DEFAULT_COMMAND

C.  DISMISS_ALERT_COMMAND

D.  DISMISS_COMMAND

23.一个命令(Command)包含如下信息:( a b c d )(多选)

A.一个短标签

B.一个可选的长标签

C.命令类型

D.命令优先顺序

E.命令处理函数

24.获取ChoiceGroup中用户的选择的方法有:(  b c d )(多选)   P105

A.getSelected

B.getSelectedIndex

C.getSelectedFlags

D.isSelected

25.对于底层API,下面哪个说法是正确的?( )          P114

A.在Canvas中,系统会自动绘制背景

B.与Form相同,不可以直接使用Canvas类(要继承此类才可以使用它)

C.在MIDlet中,可以混合使用底层API和高级API

D.传入paint方法的Graphics对象可以重复使用

26.对于底层API,下面哪个说法是正确的?(D)  C         P114

A.在每次调用paint方法时,其Graphics参数对象是相同的

B.缺省情况下,Canvas将自动擦除背景图象

C.getGraphics方法获得的Graphics对象不能将图形绘制在屏幕上

D.Canvaspaint方法的Graphics参数只能由调用getGraphics方法获得

27.在MIDP中,提供的颜色模型为( 

A.24位颜色

B.32位颜色

C.8位颜色

D.16位颜色

28. Canvas的getHeight方法用于获得哪个对象的尺寸?( 

A.Screen

B. Canvas

C.Form

D. Display

29.在MIDP中,函数Image createImage(Image source )创建的是?(bP135

A.静态图象

B.不可变图象

C.动态图象

D.可变图象

30.在MIDP中,函数Image createImage(Image image,int X,int Y,int width,int height,int transform)创建的是?(b

A.不可变图象

B.可以是可变的,也可以是不可变的

C.可变图象

D.动态图象

31.在基于线程的多任务处理中,什么是调度程序所分派的最小代码单位?(C)  

A.线程

B.管程

C.程序

D.路程

32.在MIDP中,CustomItemgetInteractionModes方法作用为(A)(多选)ACDP151

A.判断系统是否支持在此Item上处理键盘事件、指针事件、游历事件等

B.获取此Item使用设备的方法

C.获取此Item是否支持使用键盘事件、指针事件、游历事件等

D.获取此Item与用户交互的方法

33.在Canvas中定义了3个相关的事件处理函数,分别对应了3种键盘事件,即(abc)(多选)

A.按键释放

B.重复按键

C.按键按下

D.按键组合

34.g= getGameAction(getKeyCode(g))总是正确的 a

A.正确

B.错误

35.Sprite主要用于如下哪种用途?(c

A.管理图层

B.创建游戏中的背景

C.游戏中的角色

D.提供了一个观察窗口

36.在GameCanvas中,关于其按键事件处理,下面哪一个说法是不正确的?(a)    P174

A.提供了三种按键事件处理机制

B.可以处理两个按键同时按下的情况

C.可以通过getKeyStates()方法检查游戏动作按键目前的状态

D.可以为键盘的每个事件提供了单独的处理函数

37.在LayerManager中,最终在屏幕上显示的图象由什么决定?》c

A.LayerManager的大小

B.图层的顺序

C.LayerManager的观察窗口

D.设备的显示能力

38.在sprite中,图象的显示顺序由什么决定?(d

A.由系统决定

B.针顺序值

C.针索引值

D.Z序值

39.在TiledLayer中,TiledLayer在其内部维护着一个显示矩阵,记录着整个图层被分为多少个网格,每个网格显示的是哪一个tile.   a                           P184

A..正确

B.错误

40.在TileLayer中,改变动态Tile的关联Tile时,TileLayer中的显示矩阵中所有的此动态Tile对应的图像都会发生变化。 a                   P186

A.正确  B,错误

41.把字节转换成字符的输入流是(c

  A.Reader

B.OutputStreamWriter

C.InputStreamReader

D.PrintStream

E.OutputStream

F.InputStream

G.Writer

H.DataOutputStreamWriter

I.DataInputStream

J.ByteArrayOutputStream

K.ByteArrayInputStream

42.调用接口HttpConnection中的方法getHeaderField,将进入HTTP连接的什么状态?(b) P205

  A.建立

B.已连接

C.已关闭

D.请求

43.为了使用socket实现socket服务器,需要调用什么方法等待客户端连接?(bP214

  A.openAndAccept

B.acceptAndOpen 

C.bind

D.Bind

44.对于接收者接收的短信,短信包含的地址为(b

  A.接收者地址

B.发送者地址

C.短信服务中心的地址

45.在PushRegistry机制下,服务程序通过什么方式通知AMS其需要监听的端口?(bc)多选P224

  A.操作系统注册

B.调用registryConnection()方法

C.JAD文件

D.AMS端口

46.在J2ME中,MIDlet Suite的签名使用算法为(AD)多选  P240

  A.SHA1哈希算法

B.DES算法

C.MD5算法

D.RSA算法

47.当调用enumerateRecords()创建RecordsEnumeration后,此时调previousRecords()将返回(c

    A.第1条记录

B.第2条记录

C.最后1条记录

D.最后第2条记录

48.在J2ME的记录存储中,记录存储的共享权限有( c d )多选      P249

   A. AUTHMODE_WRITE

B.AUTHMODE_READ

C.AUTHMODE_ANY

D.AUTHMODE_PRIVATE

49.MIDlet Suite中可以创建多个记录存储。a

   A.正确  B,错误

50.RecordComparator接口中的compare()方法 用于记录的匹配。a

  A.正确  B,错误

1. J2ME针对的设备报括:( b c d 

A各种PC   B 电视机顶盒   消费类和嵌入类设备   D手机设备

2. JAVA语言的前身为:( 

A Oak语言   B C语言       C C++语言              D Basic语言

4. 在CDC的基础上,定义了如下Profile (b )

A  MIDP、FPPP PBP   B  FPPPPBP   

C  MIDP       D MIDP、FPPP 

12.MIDlet主动要将MIDlet的状态由运作状态变成停止状态,可以:(P51

A  调用notifyPause( )     B 直接调用pauseApp 

C  调用MIDlet.destoryApp (  ) D 调用MIDlet.notifyDestory ( )方法

16.下面哪个类是Item的子类? ( ) 

A  Form   B  TextField   C TextBox   D List

17.删除Displayable的命令处理类的方法为:( 

A  removeCommandListener   B deleteCommandListener  

C  setCommandListener       D commandAction

20.为了保证在任何情况下都能在MIDP中处理中文,最合适的中文编码为:( 

A  ISO8859   B UNICODE   C  UTP—8   D GB2312

21.设置Item中的命令处理函数的入口,需要调用函数:( P93

A  Item.setCommandListener   B Form.setItemCommandAction

C  Form.setCommandListener  D Item.setItemCommandAction

24.List的类型包括:( a b d P105

A  MULTIPLE    B IMPLICIT   C  POPUP  D  EXCLUSIVE

25.对于底层API,下面哪个说法是正确的?( 

A  传入paint方法的Graphics对象可以重复使用

B  与Form相同,可以直接使用Ganvas

C  在Canvas中,系统会自动绘制背景

D  在MIDlet中,不可以混合使用底层API和高级API

26.对于底层API,下面哪个说法是正确的?( 

A  传入paint方法的Graphics对象可以重复使用

B  与Form相同,可以直接使用Ganvas

C  在Canvas中,系统不会自动绘制背景

D  在MIDlet中,可以混合使用底层API和高级API 

27.MIDP提供了如下哪种函数用于查询设备支持的颜色的种数?( b  )

A. isColor

B.numColors

C.displayColors

D.isdisplayColor

29.函数translate(int  x, int y)的作用为( d  ).

A.无此函数

B.将坐标原点值上分别加上值x,y

C.不知道

D.将坐标原点移动到(x,y)

30.在MIDP中图象分哪几种? ( a )

A.可变图象和不可变图象

B.静态图象和动态图象

C.彩色图象和黑白图象

D.位图和矢量图

32.在MIDP,代码的同步主要包括如下哪些方法?( BC)  P147  

A.使用全局变量

B.使用callSerially方法

C.使用synchronized关键字,包括对单独的语句或者整个方法或者对象

D.使用servicePaint方法

34.k=getKeyCode(getGameAction(k))总是正确的. b

A.正确

B.错误

35.Sprite主要用于如下哪种用途?( a )

A.游戏中的角色

B.管理图层

C.创建游戏中的背景

D.提供了一个观察窗口

39.TiledLayer内部维护一个网格矩阵,用于记录各个网格需要显示的内容---实际上是各网格包含的tite的索引值 a

A.正确

B.错误

40.TiledLayer中的各个小图象(tile)来源自一个大的图象,并且具有唯一的索引值.A 

A.正确

B.错误

41.把字符转换成字节的输出流是( a )

A.DataOutputStream

B.InputStream

C.DataInputStream

D.PrintStream

43.为了使用socket实现socket客户端,需要使用接口( b )     P215

A.HTTPConnection

B.SocketConnetion

C.SocketServerConnection

D.ServerSocketConnection

46.在下列方法中,是公开密钥算法的是( b d ).

A.IDEA算法

B.RSA算法

C.DES算法

D.椭圆曲线算法

49.使用多线程访问记录存储并不会损坏到记录存储中的数据. b

A.正确

B.错误

4.在实际的支持Java的设备中: ( A )

A.系统提供商可以提供自己定制的Java类库

B.所有Java程序都必须符合CLDC

C.设备必须支持CLDC

D.所有Java程序都必须符合MIDP规范

12.下面哪种情况下MIDlet进入暂停状态 ?( D )

A.AMS调用MIDlet.startApp()方法

B. AMS调用MIDlet.pauseApp()方法

C .AMS调用MIDlet.destroyApp()方法

D.当在活动状态时,startApp()方法抛出MIDletStateChangeException异常时

27.Canvas的哪个方法用于判断设备是否支持双缓存? ( d )

A.hasPointerEvents()

B.hasPointMotionEvents()

C.hasRepeatEvents()

D.isDoubleBuffered()

28.对于底层API,下面哪个说法是不正确的? ( B )  P117

A.MIDP要求设备在不具有24位颜色能力时,能够提供一种将此24们颜色映射为其可以表示的颜色的能力

B.MIDP要求设备都支持此24位颜色模型

C.MIDP没要求设备必须支持双缓存

D.MIDP提供了24位的颜色模型,分别用8位表示颜色的红.绿.蓝部分

30.在MIDP,函数Image createImage(Image image,int x,int y,int width, int height ,int transform) 创建的是( c  )

A.可变图像

B.不可变图像

C.可以是可变的,也可以是不可变的

D.动态图像

32.在Java,创建线程的方法有( b d  )

A.实现Run接口

B.实现Runnable接口

C.继承Process,并实现run()方法

D.继承Thread,并实现run()方法

40. TiledLayer中的各个小图像(title)来源自一个大的图像,要求此大图像分割后形成的Tile不能相同.A  P185

A.正确

B.错误

49. 在同个MIDlet Suite,记录存储的名字可以相同. b

A.正确

B.错误

49.MIDlet Suite中可以创建多个记录存储。a

   A.正确  B,错误

2.针对消费类和嵌入式设备的Java 2 平台版本为: ( b )

A.J2EE

B.J2ME

C.J2SE

6.在MIDlet,显示在屏幕上的对象是: ( c )

A.Screen

B.Form

C.Displayable

D.Display

6.在MIDlet中,管理屏幕的对象是( D

A.Screen

B.  Form

C.  Displayable

D.  Display

16.在MIDlet中,哪个类处理屏幕的切换?( )    P60

A.MIDlet

B.Displayable

C.Dispaly

D.Form

21.所有的Item都有一个( a ).

A.Label

B.Title

C.Ticker

D.Command

24.ChoiceGroup的类型包括: ( ACD )

A.MULTIPLE

B.IMPLICIT

C.POPUP

D.EXCLUSIVE

26.对于底层API,下面哪个说法是正确的? (ABCD  )

A.在底层API,绘制图形时程序需要首先设置Graphics对象的颜色属性

B.当Canvas从屏幕上移除时,系统会自动调用函数hideNotify(),此函数缺省情况下不作任何动作

C.当Canvas从屏幕上由不可见变为可见时,系统会自动调用函数showNotify(),此函数缺省情况下不作任何动作

D.当程序需要重新绘制屏幕时,可以调用repaint方法要求重新绘制屏幕

27.MIDP提供了如下哪种函数用于查询设备是否具有显示彩色的能力?( d )

A.displayColors

B.numColors

C.isdisplayColor

D.isColor

29.下图中,左上角的图像是由下面哪个调用产生的? (  )

 

 

A.g.drawImage(image,0,0,Graphics.TOP|Graphics.LEFT)

B.g.drawImage(Image.createImage(image,0,0,image.getWidth(),image.getHeight(),Sprite.TRANS_ROT90),width,height,Graphics.??????)  //BOTTOM|Graphics.RIGHT

C.g.drawImage(Image.createImage(image,0,0,image.getWidth(),

image.getHeight(),Sprite.TRANS_ROT180),width/2,height/2,???)

   //Graphics.VCENTER|Graphics.HCENTER

D.不能创建

30. 缺省情况下,Graphics对象的颜色属性为:( B )P120

A.白色

B.黑色

C.灰色

D.未知

34.一个游戏动作按键可以被多个键码映射. a

A.正确

B.错误

36.在GameCanvas,为了将图像显示在屏幕上,需要调用哪种函数?( b  )

A.drawImage

B.flushGraphics

C.showImage

D.showGraphics

37.如果图层在LayerManager的坐标为(18,37),宽度和高度皆为50,观察窗口在LayerManager的坐标为(52,11), 宽度和高度皆为85,观察窗口在LayerManager(实际屏幕上)的坐标为(17,17),则显示的屏幕上的图层区域在LayerManager上的坐标为( B  )  P178

A.左上角坐标为(18,37),右下角坐标为(137,87)的矩形

B. 左上角坐标为(52,37),右下角坐标为(68,87)的矩形

C. 左上角坐标为(52,37),右下角坐标为(137,96)的矩形

D. 左上角坐标为(52,37),右下角坐标为(137,87)的矩形

39.静态title与源图像的关联关系自创建之后不能更改. a

A.正确

B.错误

40.动态title与源图像的关联关系自创建之后可以更改. a

A.正确

B.错误

41.包含读取Java标准数据类型方法的输入流是( c )

A.ByteArrayInputStream

B.ByteArrayOutputStream

C.DataInputStream

D.DataOutputStream

E.InputStream

F.OutputStream

G.PrintStream

H.InputStreamReader

I.OutputStreamWriter

J.Reader

K.Writer

44.调用方法Connector.open(“sms://:2345”),MessageConnection接口工作在(  d )模式.

A.sms模式

B.client模式

C.cbs模式

D.server模式

49.在记录存储内部维护了一个内部版本号. a

A.正确

B.错误

6.MIDlet在每次进入活动状态时需要调用:(C

  A.pauseApp()

B. destroyApp()

C. stratApp()

D. paint()

8.在Java语言中,异常原因有:()多选 a b c d

 A.违反语言规范

B.操作系统出现了问题

C.超出Java执行环境限制

D.开发者自定义的

12.下面哪种情况下MIDlet进入暂停状态?(B

   A.当MIDlet调用MIDlet.notifyDestroyed()方法

B.当在活动状态时,MIDlet调用MIDlet.notifyPaused()方法成功返回时

C.AMS调用了MIDlet.pauesApp()方法

D.AMS调用MIDlet.startApp()方法

24.在Item类中,还提供了如下几个布局设置格式常熟:(ABCDEFGHIJKLM)多选 P93

  A.LAYOUT_NEWLINE_BEFORE

B.LAYOUT_VCENTER

C.LAYOUT_ NEWLINE_AFTER

D.LAYOUT_BOTTOM

E.LAYOUT_SHRINK

F.LAYOUT_TOP

G.LAYOUT_VSHRINK

H.LAYOUT_CENTER

I.LAYOUT_RIGHT

J.LAYOUT_EXPAND

K.LAYOUT_LEFT

L.LAYOUT_V EXPAND

M.LAYOUT_DEFAULT

25.对于底层API,图像可以绘制在屏幕上,也可以绘制在缓冲区中。在屏幕上绘图时,Graphics对象的来源为() c

   A.调用MIDlet的相应函数获得

B.在相关的image上调用getGraphics()方法获得

C.由paint函数传入

D.调用Graphics的构造函数创建

26.对于底层的API,图像可以绘制在屏幕上,也可以绘制在缓冲区中。在内存的图像缓存区中进行绘图时,Graphics对象的来源为()。a

   A.在相关的image上调用getGraphics()方法获得

B.调用MIDlet的相应函数获得

C.调用Graphics的构造函数创建

D.由paint函数传人

29.在MIDP中,函数Image createRGBImage (int[] rgb, int width, int height, Boolean processAlpha ) 创建的是(B

   A.可变图像

B.不可变图像

C.静态图像

D.动态图像

30.在MIDP中,通过getGraphics方法获得的Graphic对象创建的图像是(CP138

   A.不可变图像

B.静态图像

C.可变图像

D.动态图像

32.在Java中,判定一个线程是否结束的方法有(BC)多选  P144

   A.调用stillAlive()

B.调用isAlive函数

C.调用join()

D.调用autojoin()

5. 键盘事件处理方法中,以下哪个方法是用来处理键盘按键的释放事件的 ( B ) 

A.keyPressed(int keyCode) 

B.keyReleased(int keyCode) 

C.keyRepeated(int keyCode) 

D.pointerPressed(int x, int y) 

6. 下列中不属于CLDC这种配制的设备是:( D ) 

CLDC -“手持设备” CDC -“从墙取电设备” 

A. PDA 

B. 手机 

C. 寻呼机 

D. 机顶盒 

7. 编写语句,将下面各种范围内的随机整数赋给变量n,赋值正确的是:( ) 

n<=x<=m 则 x=(int)( n + Math.random() * (m-n+1))  取值的最小数字 取值范围 注:如果直接random的话数字从0开始 

A.1小于等于n, n小于等于2  解:n = (int)(1+Math.random()*2); 

B.1小于等于n, n小于等于100 解:n = (int)(1+Math.random()*100); 

C.0小于等于n, n小于等于解:n = (int)(Math.random()*10); 

D.以上解都对 

8. 下列不属于CLDC1.1核心类库与J2SE核心类库的主要区别的是: ( A ) 

A. 不支持线程组或守护线程 

B. 不支持浮点数据类型 

C. 不支持弱引用 

D. 有限的错误处理   

9. 下列选项中不属于MIDlet套件的是 ( C ) 

A. 附在JAR文件中Java类文件  

B. 描述JAR文件内容的清单文件 

C. CVM虚拟机 

D. JAM(应用程序管理器)  

12. 以下是一个创建记录仓库的示例,描述正确的是: ( D )

 private RecordStore rs = null; try{ rs = RecordStore.openRecordStore(“testRMS”,false); } catch(Exception e){}  

A.该示例创建记录仓库名为testRMS,如果该记录仓库存在则不作任何处理 

B.该示例创建记录仓库名为testRMS,如果该记录仓库存在则打开 

C.该示例创建记录仓库名为testRMS,如果该记录仓库不存在则抛出异常 

D.该示例创建记录仓库名为testRMS,如果该记录仓库不存在则不作任何处理    1

4.下面属于J2ME体系结构中的内容是 : ( D ) 

A. Configurations 

B. Profiles 

C. Optional Packages 

D. 以上都是    

17. J2ME用户界面组件分为高阶用户界面组件和低阶用户界面组件,以下描述正确的是:( D ) 

A.Screen类属于低阶用户界面组件 

B.Canvas类属于高阶用户界面组件 

C.Screen类和Canvas都属于高阶用户界面组件 

D.Displayable类是Screen类和Canvas类的父类    

21.在List列表类中定义了三种选择类型,其中代表单选模式的选项是 : ( A ) 

A.exclusive 

B.Implicit 

C.multiple 

D.以上都不是  

 22.List列表类中定义了三种选择类型,其中哪一个能够呼叫commandAction()函数 : ( A ) 

A.Implicit 

B.exclusive 

C.multiple 

D.以上都不可   

3.TextBox类用于输入数据,其中该类针对输入类型定义了几个限制约束 ,其中代表只能输入数字的是: ( A ) 

A.NUMERIC 

B.DECIMAL 

C.PHONENUMBER 

D.URL  

26.属于能够操纵List列表类中元素的方法是: ( D ) 

A.append 

B.delete 

C.insert 

D.以上均是  

 27.以下描述正确的是:( ) 

A. 抽象类的所有方法都必须是抽象方法 

B. 子类变量引用超类对象的做法是危险的 

C. 内部类不允许访问包装类的成员 

D. 父类是抽象类,子类要成为具体类,就必须实现父类的所有方法  

28.关于ALert类下面描述正确的是 : ( D ) 

A. 先发出一段声音,然后将自己秀在屏幕上,过一段时间之后,它会自动跳回之前的画面 

B. 必须在显示Alert之前定义好它可以跳回的画面,否则会发生异常 

C. 如果想要Alert一直保持在自己的画面上,就要使用方法FOREVER() 

D. 以上都对  

29.Form是J2ME里面比较重要的容器类型,它必须配合Item类来使用,不属于Item类的子类的是 : ( D ) 

A.TextField  

B.StringItem 

C.ChoiceGroup 

D.TextBox   

30.Item类的子类中,哪一个在与Form类结合使用的时候能生成与使用TextBox时相似的效果 : ( B ) 

A.DateField 

B.TextField  

C.StringItem 

D.Gauge    

31.关于abstract抽象类描述正确的是:( A ) 

A.不能生成抽象的构造函数 

B.可以生成抽象的static方法 

C.允许生成private的抽象方法 

D.以上描述都对     

33.Item类的子类中,哪一个在与Form类结合使用的时候能生成与使用List时相似的效果 : ( C ) 

A.Spacer 

B.Gauge 

C.ChoiceGroup 

D.TextField     

34.当使用ChoiceGroup类与Form类结合使用的时候,采用类型限制时,哪一种类型不能使用,如果使用会发生异常 : ( A ) P168 

A.IMPLICIT 

B.EXCLUSIVE 

C.MULTIPLE 

D.以上都不可    

37. List 和 ChoiceGroup类都实现了哪一个接口( B ) 

A.Group B.Choice C.GroupChoice D.以上都不是     

38.J2ME中所有高阶图形用户界面组件的父类是:( C ) 

A.Canvas类 B.Form类 C.Screen类 D.Graphics类    

39.J2ME中所有用来处理低阶图形用户界面组件的父类是:( B ) 

A.Form类 B.Canvas类 C.List类 D.Screen类    4

2.Display类就像一个画面管理员,获得Display类对象的方法是(参数略)( D ) 

A.getDisplayable(...) B.getCurrent(...) C.setCurrent(...) D.getDisplay(...)    

44. 下面关于LayerManager类描述正确的是: ( A ) 

A. 一个程序中只允许使用一个LayerManager类 

B. 一个程序中可以使用多个LayerManager类 

C. LayerManager类只允许添加一个Sprite类的实例作为图层管理的一部分 

D. LayerManager类可以添加LayerManager类的实例作为图层管理的一部分    

47.使用低级图形用户界面组件需要继承哪一个类: ( D ) 

A.Graphics类 B.Screen类 C.Displayable类 D.Canvas类  

 48.下列方法中哪一个方法能实现在屏幕上描绘出一条虚线(其他部分程序代码省略)( C ) public void paint(Graphics g) { g.setColor(255,255,255); g.fillRect(0,0, getWidth(), getHeight());  /* 代码段A */ g.setColor(255,0,0);  g.drawLine(20, 20, 100,20);  /* 代码段B */ g.setColor(125, 125,125); g.drawLine(20,25,100,50); g.setStrokeStyle(Graphics.SOLID);  /* 代码段C */ g.setColor(125, 125,125); g.drawLine(20,30,100,50); g.setStrokeStyle(Graphics.DOTTED);  /* 代码段D */ g.setColor(255,255,255); g.drawLine(20,50,100,50);  } 

A. 代码段

B. 代码段

C. 代码段

D. 代码段D   

49. 以下方法哪一個可以判断屏幕颜色是否彩色( B ) 

A. setColor(...) 

B. isColor(...)

 C. getColor(...) 

D. ifColor(...)  

 50. Layer类是一个抽象类,它有两个子类分别是: ( C ) 

A. TiledLayer类和LayerManager类 

B. TiledLayer类和GameCanvas类 

C. Sprite类和TiledLayer类 

D. LayerManager类和Sprite类    

GameCanvas中,为了将图像显示在屏幕上,需要调用那种函数? 

A. flushGraphics B.drawImage C.showGraphics D.showImage

Android笔试题

1. 请谈一下Android系统的架构。

答:Android系统采用了分层架构,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。

2. 谈谈android大众常用的五种布局。

  

   答:在Android中,共有五种布局方式,分别是:FrameLayout(框架布局)LinearLayout (线性布局)AbsoluteLayout(绝对布局)RelativeLayout(相对布局)TableLayout(表格布局)

  (1)FrameLayout 框架布局,放入其中的所有元素都被放置在最左上的区域,而且无法为这些元素指定一个确切的位置,下一个子元素会重叠覆盖上一个子元素,适合浏览单张图片。

  (2)LinearLayout 线性布局,是应用程序中最常用的布局方式,主要提供控件水平或者垂直排列的模型,每个子组件都是以垂直或水平的方式来定位(默认是垂直)

  (3)AbsoluteLayout 绝对定位布局,采用坐标轴的方式定位组件,左上角是(00)点,往右x轴递增,往下Y轴递增,组件定位属性为android:layout_x 和 android:layout_y来确定坐标。

  (4)RelativeLayout 相对布局,根据另外一个组件或是顶层父组件来确定下一个组件的位置。和CSS里面的类似。

(5)TableLayout 表格布局,类似Html里的Table.使用TableRow来布局,其中TableRow代表一行,TableRow的每一个视图组件代表一个单元格。

3.谈谈android数据存储方式。

  

    答:Android提供了5种方式存储数据:

  (1)使用SharedPreferences存储数据;它是Android提供的用来存储一些简单配置信息的一种机制,采用了XML格式将数据存储到设备中。只能在同一个包内使用,不能在不同的包之间使用。

  (2)文件存储数据;文件存储方式是一种较常用的方法,在Android中读取/写入文件的方法,与Java中实现I/O的程序是完全一样的,提供了openFileInput()openFileOutput()方法来读取设备上的文件。

  (3)SQLite数据库存储数据;SQLiteAndroid所带的一个标准的数据库,它支持SQL语句,它是一个轻量级的嵌入式数据库。

  (4)使用ContentProvider存储数据;主要用于应用程序之间进行数据交换,从而能够让其他的应用保存或读取此Content Provider的各种数据类型。

  (5)网络存储数据;通过网络上提供给我们的存储空间来上传(存储)和下载(获取)我们存储在网络空间中的数据信息。

  

4.Android中Activity, Intent, Content Provider, Service各有什么区别。

 

  答:Activity:活动,是最基本的android应用程序组件。一个活动就是一个单独的屏幕,每一个活动都被实现为一个独立的类,并且从活动基类继承而来。

  Intent:意图,描述应用想干什么。最重要的部分是动作和动作对应的数据。

  Content Provider:内容提供器,android应用程序能够将它们的数据保存到文件、SQLite数据库中,甚至是任何有效的设备中。当你想将你的应用数据和其他应用共享时,内容提供器就可以发挥作用了。

Service:服务,具有一段较长生命周期且没有用户界面的程序。

5.View, surfaceView, GLSurfaceView有什么区别。

 

 答:view是最基础的,必须在UI主线程内更新画面,速度较慢。

  SurfaceView view的子类,类似使用双缓机制,在新的线程中更新画面所以刷新界面速度比view快。

GLSurfaceView 是SurfaceView的子类,opengl 专用的。

6.Adapter有什么作用?常见的Adapter有哪些?

 

 答:Adapter是连接后端数据和前端显示的适配器接口。常见的AdapterArrayAdapter, BaseAdapter, CursorAdapter, HeaderViewListAdapter, ListAdapter, ResourceCursorAdapter, SimpleAdapter, SimpleCursorAdapter, SpinnerAdapter, WrapperListAdapter等。

7.Manifest.xml文件中主要包括哪些信息?

  

   答:manifest:根节点,描述了package中所有的内容。

  uses-permission:请求你的package正常运作所需赋予的安全许可。

  permission: 声明了安全许可来限制哪些程序能你package中的组件和功能。

  instrumentation:声明了用来测试此package或其他package指令组件的代码。

  application:包含packageapplication级别组件声明的根节点。

  activityActivity是用来与用户交互的主要工具。

  receiverIntentReceiver能使的application获得数据的改变或者发生的操作,即使它当前不在运行。

  serviceService是能在后台运行任意时间的组件。

provider:ContentProvider是用来管理持久化数据并发布给其他应用程序使用的组件。

  8.请写一段代码(SAX, DOM, 或者pull )来解析XML文档。

  

  答:下面是要解析的XML文件:

<?xml version="1.0" encoding="UTF-8"?> <persons>

     <person id="1">

       <name>张三</name>

       <age>22</age>

     </person>

     <person id="2">

       <name>李四</name>

       <age>23</age>

     </person>

</persons>

  定义一个名为PersonjavaBean用于存放上面解析出来的xml内容:

public class Person

{

    private Integer id;

    private String name;

    private Short age;

    public Integer getId()

{

        return id;

    }

    public void setId(Integer id)

{

        this.id = id;

    }

    public String getName()

{

        return name;

    }

    public void setName(String name)

{

        this.name = name;

    }

    public Short getAge()

{

        return age;

    }

    public void setAge(Short age)

{

        this.age = age;

    }

}

9.根据自己的理解描述下Android数字签名。

 

 答:(1)所有的应用程序都必须有数字证书,Android系统不会安装一个没有数字证书的应用程序。

    (2)Android程序包使用的数字证书可以是自签名的,不需要一个权威的数字证书机构签名认证。

    (3)如果要正式发布一个Android ,必须使用一个合适的私钥生成的数字证书来给程序签名,而不能使用adt插件或者ant工具生成的调试证书来发布。

  (4)数字证书都是有有效期的,Android只是在应用程序安装的时候才会检查证书的有效期。如果程序已经安装在系统中,即使证书过期也不会影响程序的正常功能。

  10.已知单链表的头结构head,写一个函数把这个链表逆序。

  

 答: 如下所示

  Node.java

public class Node

{

private Integer count;

private Node nextNode;

public Node(){}

public Node(int count)

{

this.count = new Integer(count);

}

public Integer getCount() {

return count;

}

public void setCount(Integer count) {

this.count = count;

}

public Node getNextNode() {

return nextNode;

}

public void setNextNode(Node nextNode) {

this.nextNode = nextNode;

}

}

  ReverseSingleLink.java

public class ReverseSingleLink

{

public static Node revSingleLink(Node head){

if(head == null){ //链表为空不能逆序

return head;

}

if(head.getNextNode()==null){ //如果只有一个结点,当然逆过来也是同一个

return head;

}

Node rhead = revSingleLink(head.getNextNode());

head.getNextNode().setNextNode(head);

head.setNextNode(null);

return rhead;

}

public static void main(String[] args){

Node head = new Node(0);

Node temp1 = null,temp2 = null;

for(int i=1;i<100;i++){ temp1 = new Node(i);

if(i==1){ head.setNextNode(temp1);

}

else

{

temp2.setNextNode(temp1);

}

temp2 = temp1;

}

head = revSingleLink(head);

while(head!=null){

head = head.getNextNode();

}

}

}

11. 根据自己的理解描述下Android安卓数字签名。

  

    (1)所有的应用程序都必须有数字证书,Android系统不会安装一个没有数字证书的应用程序。

  (2)Android程序包使用的数字证书可以是自签名的,不需要一个权威的数字证书机构签名认证。

  (3)如果要正式发布一个Android ,必须使用一个合适的私钥生成的数字证书来给程序签名,而不能使用adt插件或者ant工具生成的调试证书来发布。

    (4)数字证书都是有有效期的,Android只是在应用程序安装的时候才会检查证书的有效期。如果程序已经安装在系统中,即使证书过期也不会影响程序的正常功能。

<!--EndFragment-->
<!--EndFragment-->
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值