Java编程测试实战:接口继承与关键知识点

3星 · 超过75%的资源 需积分: 10 3 下载量 22 浏览量 更新于2024-07-28 收藏 48KB DOCX 举报
本资源是一份针对Java J2SE的学习和测试题目集合,旨在评估和提升对Java基础语言的理解。以下是各题目的详细解析: 1. **构造ArrayList实例**:题目要求创建一个继承自List接口的ArrayList实例。正确的方法是`BList myList = new ArrayList();`,因为ArrayList是List接口的一个实现类,所以使用其类名new实例化是合适的。 2. **paint()方法参数类型**:在Java中,`paint()`方法通常与图形绘制相关,比如`Graphics`类,所以正确答案是`AGraphics`。`Graphics2D`是Graphics的子类,用于更高级的绘图,`CString9`和`Color`则与此无关。 3. **数据类型表达式**:`A byte = 128;` 是正确的,因为byte是8位整型,可以存储128。`B Boolean = null;` 是错误的,因为Boolean类型应该赋值true或false,而不是null。`C long l = 0xfffL;` 是错误的,因为0xfff不会被正确解释为一个long类型的值。`D double = 0.9239d;` 是正确的,因为0.9239是一个有效的double值。 4. **字符串和字符数组操作**:程序中,`str`被改变为"testok",而`ch`的第一个元素被改为'g',所以输出应该是`D testok and gbc`。 5. **线程和Runnable接口**:题目中的X类继承自Thread并实现了Runnable接口。`Thread t = new Thread(new X());` 创建了一个线程对象,`t.start();` 启动线程,因此程序会运行并启动,D选项正确。编译错误和运行错误都不可能出现。 6. **静态数组访问**:在`main()`方法中,试图打印静态数组`arr[1]`的值。由于数组是静态的,应该先调用`Person.class.getDeclaredField("arr")`获取数组引用,再进行访问。这里直接访问会导致编译错误,如果是在特定上下文中,可能需要其他初始化步骤。 通过这些题目,学习者可以检验自己的Java基础知识,包括面向对象编程、数组、数据类型、多线程以及基本语法等。理解和解答这些问题有助于加深对Java J2SE语言的理解和应用能力。