Java EE基础复习:选择题与编程解析

需积分: 9 5 下载量 28 浏览量 更新于2024-09-18 2 收藏 171KB DOC 举报
"这是一份关于Java EE的复习资料,主要包含了一些Java期末考试的选择题和填空题。题目涵盖了ArrayList的实例化、paint方法、基本数据类型与对象、字符串及字符数组的操作、多线程等方面的知识。" 在Java编程中,ArrayList是一个常用的集合类,它实现了List接口。在创建ArrayList实例时,正确的方式是使用`List myList = new ArrayList<>();`,因为ArrayList是List接口的一个实现类,所以实例化时应使用具体类而非接口。选项B正确,其他选项A、C、D都是错误的实例化方式。 paint方法是用于绘制图形的方法,它通常接收一个Graphics类型的参数,以便进行画布上的绘图操作。因此,选项A `Graphics` 是正确的。 在Java中,变量的赋值需要遵循类型匹配的规则。选项A的`byte=128;`是错误的,因为128超出了byte类型的范围。选项B的`Boolean=null;`也是不正确的,因为null不能直接赋值给基本类型的布尔值。选项C `long l=0xfffL;`是合法的,使用L或l后缀表示长整型常量。选项D `double=0.9239d;`同样合法,d或D后缀表示双精度浮点数。 对于第四题,程序中的change方法改变了字符串引用str所指向的对象,但对字符数组ch进行了直接修改。因此,str仍然是"good",而ch的第一个元素被修改为'g',其余元素不变。所以,输出应该是"goodandgbc",选项B是正确答案。 第五题涉及多线程。在Java中,一个类可以同时继承Thread类并实现Runnable接口,但这并不意味着必须这样做。该程序不会产生任何编译错误,第六行`t.start();`会启动一个新的线程并运行run()方法,打印出"this is run()"。因此,选项A、B、C都不正确,选项D程序会运行和启动是正确的。 至于读取文件的问题,如果继续下去,代码应该包括读取文件"file.dat"的某一行或特定位置的内容。在Java中,可以使用FileInputStream、BufferedReader等流来实现文件的读取。例如,要读取第10个字节,可以使用`FileInputStream fis = new FileInputStream("file.dat");`然后通过fis.read()方法跳过前9个字节,再读取第10个字节。 以上内容详细解释了给定的Java试题中涉及的知识点,包括集合、图形绘制、数据类型、字符串操作以及多线程等核心概念。这些知识点是Java编程基础的重要组成部分,对理解Java EE的开发至关重要。