1、二级 JAVA 机试-169 及答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:30.00)1.下面程序创建一个长宽均为 100 的 Frame 窗口,并且窗口的背景颜色是蓝色。请将程序补充完整。注意:不改动程序结构,不得增行或删行。import java.awt .*;public class ex1 extends Framepublic static void main(String args)ex1 t=new ex1();t.setSize(100,100);_t.setVisible(true);(分数:30.00)_二、2简单应用题(总题数
2、:1,分数:40.00)2.通过实现 Runnable 接口创建线程,请在下面横线处填入代码完成此程序。注意:不改动程序结构,不得增行或删行。class ThreadTest implements RunnableThread thrObj;public static void main(String args)System.out.println(“这是一个通过实现接口创建线程的例子“);ThreadTest testObj=new ThreadTest();testObj.create();public void create()if(thrObj= =null)thrObj=new Th
3、read(this,“myThread“);_public void run()System.out.println(“Thread“+throbj.getName()+“:“+“在运行!“);(分数:40.00)_三、3综合应用题(总题数:1,分数:30.00)3.以下程序从键盘读取一个字符串以#作为结束,再将字符串中的小写英文字母改写成大写英文字母,最后将改写好的字符串写入磁盘文件 file.txt,请将程序补充完整。注意:不改动程序结构,不得增行或删行。package ch3;import java.io.*;class File1private char ch;private int
4、i=a-A;void savetoFile()System.out.println(“请输入一个字符串:“);try_out=new_(“ch3/file.txt“);while(ch=(char)System.in._() !=#)if(ch =a out._;out.close();catch(IOException e)e.printStackTrace();public class ex3public static void main(String args)File1 obj=new File1();Obj.savetoFile();(分数:30.00)_二级 JAVA 机试-169
5、 答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:30.00)1.下面程序创建一个长宽均为 100 的 Frame 窗口,并且窗口的背景颜色是蓝色。请将程序补充完整。注意:不改动程序结构,不得增行或删行。import java.awt .*;public class ex1 extends Framepublic static void main(String args)ex1 t=new ex1();t.setSize(100,100);_t.setVisible(true);(分数:30.00)_正确答案:(t.setBackground(Color
6、.blue);)解析:讲解 本题是基本操作题,主要考查对图形用户界面的掌握。类 ex1 继承了 Frame 类,因此该类的实例 t 就可以调用 Frame 类的基本方法 t.setBackground(Color.blue),由于题干要求窗口的背景颜色为蓝色,因此需要调用 Color.blue 作为方法 setBackground 的参数。二、2简单应用题(总题数:1,分数:40.00)2.通过实现 Runnable 接口创建线程,请在下面横线处填入代码完成此程序。注意:不改动程序结构,不得增行或删行。class ThreadTest implements RunnableThread thr
7、Obj;public static void main(String args)System.out.println(“这是一个通过实现接口创建线程的例子“);ThreadTest testObj=new ThreadTest();testObj.create();public void create()if(thrObj= =null)thrObj=new Thread(this,“myThread“);_public void run()System.out.println(“Thread“+throbj.getName()+“:“+“在运行!“);(分数:40.00)_正确答案:(thr
8、Obj.start();)解析:讲解 本题考查考生对如何通过实现 Runnable 接口创建线程及使用线程的掌握,这是一道简单应用题。程序中,ThreadTest 类实现了 Runnable 接口,所以 ThreadTest 类必须重写 Runnable 接口中的run()方法。在 create()方法创建了一个名为 thrObj 的线程,并调用 Thread 类中的 start()方法启动该线程。语句 thrObj=new Thread(this,“myThread“);中,this 是 Thread 构造方法的第一个参数,作为该线程的目标对象,它必须实现 Runnable 接口。第二个参数
9、 myTread 为线程的名称。在这种构造方法下,线程 thrObj 就以目标对象中的 run()方法作为自己的 run()方法,本例中,目标对象就是 ThreadTest 类的对象。三、3综合应用题(总题数:1,分数:30.00)3.以下程序从键盘读取一个字符串以#作为结束,再将字符串中的小写英文字母改写成大写英文字母,最后将改写好的字符串写入磁盘文件 file.txt,请将程序补充完整。注意:不改动程序结构,不得增行或删行。package ch3;import java.io.*;class File1private char ch;private int i=a-A;void savet
10、oFile()System.out.println(“请输入一个字符串:“);try_out=new_(“ch3/file.txt“);while(ch=(char)System.in._() !=#)if(ch =a out._;out.close();catch(IOException e)e.printStackTrace();public class ex3public static void main(String args)File1 obj=new File1();Obj.savetoFile();(分数:30.00)_正确答案:(FileOutputStreamFileOutputStreamreadwrite(ch)解析:讲解 本题是考查对文件输出流及其常用方法的理解。这里用文件输出流 FileOutputStream 创建向文件 file.txt 中写入字节数据的输出流,每次使用 System.in 的方法 read()读取一个字符,然后进行转换,再调用 FileOutputStream 类的 write()方法将转换后的字符写到文件对象中,这里的参数是字符类型的变量 ch。因此,4 个空的答案分别是 FileOutputStream、FileOutputStream、read 和 write(ch)。