J2ME期末考试复习重点:选择题解析与试题集

需积分: 3 2 下载量 189 浏览量 更新于2024-09-16 收藏 158KB DOC 举报
"这是一份2009~2010学年第二学期针对07级J2ME软件开发专业的期末复习试题,包含了J2ME的基础知识,旨在帮助学生复习J2ME的重要概念和编程技能。" 在J2ME(Java Micro Edition)的学习和考试中,这些试题涉及了多个关键知识点: 1. **Java IO 包**:题目提到的选项涉及到`java.io`包中的类。J2ME中的`java.io`包提供了进行输入/输出操作的基本类,如`ByteArrayInputStream`、`DataInputStream`、`PrintStream`和`FileOutputStream`。第一题询问哪个类不属于这个包,答案是D `FileOutputStream`,因为在J2ME中,`FileOutputStream`通常不被支持,因为其通常与文件系统交互,而J2ME主要用于嵌入式设备,可能没有完整的文件系统。 2. **Switch语句**:第二题考察了`switch`语句的使用。在Java中,`switch`语句的`default`块在所有`case`都不匹配时执行。如果`case`后面没有`break`,则会继续执行下一个`case`。因此,当`i`等于10时,程序将输出`"one"`,然后由于没有`break`,会继续输出`"default"`,所以正确答案是2)`"one,default"`。 3. **CLDC1.0方法**:第三题考察了CLDC(Connected Limited Device Configuration)环境下的方法。CLDC是J2ME的一部分,用于资源有限的设备。在CLDC1.0中,`Math.abs()`方法可以处理`double`类型的参数,所以A `Math.abs(double a)`是可用的,而B、C选项的`sin`和`sqrt`方法在CLDC1.0中可能不可用,D `Math.min(int a, int b)`在CLDC1.0中同样可用。 4. **预增和后增运算符**:第四题涉及了预增`++`和后增`++`运算符的区别。预增会在使用变量之前增加其值,而后增则是在使用之后增加。因此,`x`的值将是11(因为`++m`先将`m`增加到11,然后进行比较),而`y`的值将是10(因为`n++`是在比较之后增加`n`的值)。所以,正确答案是1)`11,0`。 5. **数组访问异常**:第五题测试了对数组越界访问的理解。尝试访问数组索引超出其范围会导致`ArrayIndexOutOfBoundsException`。因此,尝试访问`a[3]`(数组长度为3,索引从0开始)会导致此异常,正确答案是B `ArrayIndexOutOfBoundsException`。 6. **接口识别**:第六题问及哪些选项不是接口。在Java中,`CommandListener`、`RecordComparator`是接口,而`Player`和`Manager`可能是类或接口,但在这里,`Manager`不是标准的Java ME接口,所以正确答案是C `Manager`。 7. **RMS操作**:第七题关于记录管理存储(Record Management Store,RMS)的API。`getSizeAvailable()`方法用于获取RMS数据库的可用空间,因此正确答案是A `getSizeAvailable()`。 8. **GUI组件**:第八题涉及到J2ME的用户界面组件。`Form`类可以作为一个容器,用于添加其他组件,如`ChoiceGroup`和`TextField`,但`Spacer`通常用于布局管理,不是一个可以添加子组件的容器。正确答案是C `ChoiceGroup`。 9. **List类的属性**:第九题询问了`List`类的可用类型。`List`类允许定义不同类型的列表,如`IMPLICIT`、`EXCLUSIVE`和`SELECTABLE`,但`EXCL`不是其中之一,所以它不是`List`类的可用类型。 通过解答这些试题,学生可以复习J2ME的关键概念,包括IO流、控制结构、运算符、异常处理、接口、RMS操作以及图形用户界面组件的使用。这有助于他们准备J2ME相关的考试或项目开发。