1、JAVA语言程序设计 复习题一、选择填空题:全部为多选题,只有全部正确才能得分。1. 编译java程序的命令是_b_;运行java程序的命令是_a_;产生java文挡的命令是_d_;查询java类型是否是serializable类型的命令是_c_;产生java安全策略文件的命令是_e_;产生类型归档文件.jar的命令是_f_。A. java B. javac C. serialver D.javadoc E.policytool F.jar2. 在一个java原文件中,import, class, package语句的顺序是_f_。A. import class packageB. class
2、 import packageC. package class importD. import package classE. class package importF. package import class3. 下面叙述正确的有_cde_。A. 在一个java原文件中只能定义一个classB. 在一个java原文件中只能定义一个interfaceC. 在一个java原文件中可以定义多个classD.在一个java原文件中可以定义多个interfaceE. 在一个java原文件中可以定义多个class和interfaceF. 在一个java原文件中只能定义public classG. j
3、ava原文件的前缀一定是所包含类型的名字4. java程序中程序运行入口方法main的签名正确的有_a_。A. public static void main(String args)B. static public void main(String args)C. public void static main(String args)D. public void main(String args)5. java程序中程序入口方法main的参数代表命令行输入参数,命令行参数从_a_开始。A. 0 B. 1 C.-16. 以下属于正确的java注释有_acd_。A. /This is comm
4、ent B. /*This is commentC. /*This is comment*/ D. /*This is comment*/ 7. 以下能作为class, interface, method或variable有效标识符的有_adf_。A. For B.boolean C.23ageD. _id E.my name F. $this_is_a_long_variable_name8. 以下不是java关键字的有_d_。A. super C.this D.NULL E.true9. byte变量的取值范围是_b_。A. 0 - 65535 B.-128 ? 127 C.-256 ?
5、255 D.0 - 3276710. 以下正确的有_ac_。A. int i = 32; B.float f = 45.32; C. double d=3.2;11. 根据以下程序选择正确答案_c_:public class Test static int total = 10; public static void main (String args ) new Test(); public Test () System.out.println(In test); System.out.println(this); int temp = this.total; if (temp 5) Sys
6、tem.out.println(temp); A. 编译出错 B.运行时有异常 C. 编译运行都正确12. 下面集合定义正确的有_bd_。A. String strs = a b c; B. String strs = “a”, “b”, “c”;C. String strs = new String“a” ”b” ”c”;D.String strs = new String“a”, “b”, “c”;E.String strs = new String3“a”, “b”, “c”;13. 以下switch表达语句正确的有_ac_。A. public void switchTest(char
7、c)switch(c)B. public void switchTest(long c)switch(c)C. public void switchTest(byte c)switch(c)D. public void switchTest(double c)switch(c)14.面向对象的特性包括_g_、_i_和_j_。在java中访问权限的限制由严格到宽松依次是_e_、_h_、_b_和_a_。A.public B.protected C.identifier D.data E.private F.operations G.inheritance H.default(no modifier
8、)I.encapsulation J.polymorphism15. Java方法的参数传递对于基本数据类型如int, byte等,参数传递是_c_;对自定义数据类型,参数传递是_a_。A. by reference B.by pointer C. by value D.by address16. 下面程序出错的有_8,10_行。1. class Student2. private String name; private int age;3. public Student()4. public void setName(String name) this.name=name; 5. void
9、 setAge(int age) this.age= age; 6. 7. public class StudentTest8. public void static main(String args)9. Student s = new Student();10. s.name = “Hellen”;11. s.setAge(20);12. 13. 17. 方法重载(overloading)必须满足_bce_。A. 在不同class中定义的方法 B.在同一类中定义的方法C. 方法名必须相同 D.返回类型必须相同E. 参数一定不同 F.参数可以相同18. 对于构造方法(constructor)
10、描述正确的有_ac_。A. 构造方法没有返回类型 B.构造方法一定是public的方法C.如果我们没有显示定义构造方法,系统会提供一个缺省的D.构造方法不能重载19.在java语法中允许_b_继承,_a_方法不能被继承,_cd_被继承,显示调用父类型的构造方法是通过调用_e_来完成的。A. constructor B. single C. methods D. fields E. super19. 请看以下程序:class Vehicle public void drive() System.out.println(Vehicle: drive); class Car extends Vehi
11、cle public void drive() System.out.println(Car: drive); public class Test public static void main (String args ) Vehicle v; Car c; v = new Vehicle(); c = new Car(); v.drive(); c.drive(); v = c; v.drive(); 以下描述正确的有_c_。A.对于语句v=c;会导致编译错误 B.对于语句v=c;会导致运行错误C.运行输出:Vehicle: driveCar: driveCar: driveD.运行输出:
12、Vehicle: driveCar: driveVehicle: drive20. 程序: public class StaticTest static System.out.println(Hi there); public void print() System.out.println(Hello); public static void main(String args ) StaticTest st1 = new StaticTest(); st1.print(); StaticTest st2 = new StaticTest(); st2.print(); 什么时候字符串“Hi t
13、here”会输出_c_。A.永远都不会输出 B.创建st1和st2时C.第一次将StaticTest类型装载进内存时 D.显示调用print方法时 21. 以下描述正确的有_bcde_。A.abstract class一定有abstract method(s)B.abstract class可以没有abstract method(s)C.定义abstract class的目的是为了被继承D.interface中定义的方法全是abstract methodsE.interface中定义的变量全部是final static变量22. 一个匿名的内置类有可能_abd_。A.继承其他的类 B.实现了某
14、一接口C.定义了构造方法 D.可以使用成员变量 23. _a_又叫做unchecked exception。 Checked Exception通常继承_b_。在方法签名上指定可能有异常产生用关键字_e_, 在程序中产生异常用关键字_d_。获得异常的简单描述信息调用方法_c_, 获得详细的异常栈信息调用方法_f_。A. RuntimeException B. Exception C. getMessageD. throw E.throws F.printStackTrace24. 在图形编程中,将不同的控件按区域排列用_d_布局管理器;让控件自动排列并保持大小用_c_布局管理器;让控件按相同大
15、小排列用_b_布局管理器;一次只有一个控件可见的布局管理器是_a_。A. CardLayout B. GridLayout C. FlowLayout D. BorderLayout25. 图形编程通常按_cabd_顺序。A.设置布局管理器(Layout manager) B.向容器中增加控件C.选择容器 D.为控件设置事件处理器26. 完成如下代码,按照FlowLayout的布局方式向JFrame中添加一JButton:JFrame frame = new JFrame(“Simple GUI”);FlowLayout fl = new FlowLayout();frame.setLayou
16、t(f1);JButton btn = new JButton(“OK”);frame.add(btn);27. 事件处理方式采用了observer(观察者)设计模式,事件编程模式三要素是_a_、_b_和_c_。其中, _b_通常继承java.util.EventObject, _c_通常继承java.util.EventListener。A.Event source B.Event objectC.Event listener D.Helper E.Model28. JButton是_b_事件的事件源,它通过方法_a_注册事件侦听器, 事件侦听器必须实现接口_c_,当事件发生时侦听器的方法_
17、e_被调用,在此方法中调用_b_的方法_d_可以获得事件源。A. addActionListener B. ActionEventC.ActionListener D.getSource E.actionPerformed29. JFrame的却省布局管理器是_b_, JDialog的却省布局管理器是_b_, JPanel的却省布局管理器是_a_。A. FlowLayout B.BorderLayout C.GridLayout D.GridBagLayout30. 在swing编程中,用作提示信息的控件是_f_, 作单行文本编辑的控件是_d_, 用作多行文本编辑的控件是_a_,可编辑HTML
18、等类型文档的控件是_e_,在界面上显示多条记录并可多重选择的控件是_b_, 从下拉框中选择记录的空间是_c_。A. JTextArea B. JList C. JComboBox D. JTextField E. JEditorPane F. JLabel31. 创建线程(Thread)的方式有两种,一种是继承类_b_,另一种是实现接口_c_。启动线程的方法是_d_。线程启动后运行的是_a_里的代码。A.run B.Thread C.Runnable D.start32. 完成以下代码创建并启动线程:public class TestThread implements Runnable pub
19、lic void run() for(int i = 0; i 10000; i+) System.out.println(i); public static void main(String args) TestThread tt = new TestThread(); Thread t = _; t._;33. 判断一个线程是否被中断,调用方法_c_;中断一个线程,调用方法_a_;等待一个线程退出,调用方法_b_;一个线程放弃执行权利调用方法_d_。A. interrupt B.join C.isInterrupted D.yield34. 并发控制是多线程编程的难点。一个线程要等待某个条
20、件的满足调用方法_b_;通知某一个处于等待状态线程的方法是_a_,通知多个的是_d_;处于等待状态的线程当前调用的方法或程序块用关键字_c_来限制。A.notify B.wait C.synchronized D.notifyAll35. 对原始数据的读写,采用流_a_和_h_,为了提高性能,采用流_f_和_i_;对各种基本数据类型和String类型的读写,采用流_b_和_d_;读写文本类型采用_c_和_j_,方便读写文本行采用流_e_和_k_;对象读写采用流_l_和_m_。A. InputStream B.DataInputStream C. Reader D.InputStreamRead
21、erE.BufferedReader F.BufferedInputStream G.DataOutputStream H.OutputStream I.BufferedOutputStream J.Writer K.PrintWriter L.ObjectInputStream M.ObjectOutputStream N.OutputStreamWriter 36. 一个File对象是文件或目录在内存中的表示,File类型中定义了方法_d_来判断一个文件是否存在,定义方法_a_创建一个新文件,定义方法_c_删除一个文件,定义方法_b_改变文件名,定义方法_f_创建一级目录,定义方法_e_同
22、时创建一个目录层次。对原始数据类型文件的操作用文件I/O流_h_和_k_;对文本文件操作用文件I/O流_g_和_j_;同时对一个文件进行读写操作用文件流_i_。A.createNewFile B.renameTo C.delete D.existsE.mkdirs F.mkdir G.FileReader H.FileInputStream I.RandomAccessFile J.FileWriter K.FileOutputStream37. 创建一个TCP服务程序,该程序运行在port为6868,完成以下代码,实现一个多线程的服务程序:_ServerSocket ss = new Ser
23、verSocket(6868);while(true) Socket clientRequest = ss.accept(); service(clientRequest);38. 创建一个tcp客户程序的顺序是_dacbe_。A. 获得I/O流B. 关闭I/O流C. 对I/O流进行读写操作D. 建立socketE. 关闭socket39. 创建一个tcp服务程序的顺序是_bcadegf_。A. 创建一个服务线程处理新的连接B. 创建一个服务器socketC. 从服务器socket接受客户连接请求D. 在服务线程中,从socket中获得I/O流E. 对I/O流进行读写操作,完成与客户的交互F.
24、 关闭socketG. 关闭I/O流40. 可以通过使用URL和URLConnection类型来完成基于HTTP/FTP的远程通讯,完成以下代码读取Tarena网站的首页内容: URL tarenaFirstPage = _new URL(http:/210.29.0.5)_; InputStream is = _tarenaFirstPage.openString()_; BufferedReader br = _new bufferedReader(is)_; String line = null; while(line = br.readLine() != null) System.ou
25、t.println(line);41. Java UDP编程主要用到的两个类型是_b_和_d_。发送和接收信息的方法是_f_。A.UDPSocket B.DatagramSocketC.UDPPacket D.DatagramPacketE.read/write F.send/receive 42.指出下列哪个方法与方法public void add(int a)为合理的重载方法。 bcdA public int add(int a) B public void add(long a) C public void add(int a,int b) D public void add(float
26、 a)43.如果下列的方法能够正常运行,在控制台上将显示什么?ACDpublic void example()tryunsafe();System.out.println(Test1);catch(SafeException e)System.out.println(Test 2);finallySystem.out.println(Test 3);System.out.println(Test 4); A Test 1 B Test 2 C Test 3 D Test 444.如果下列的方法不能正常运行,在控制台上将显示什么?BCDpublic void example()tryunsafe
27、();System.out.println(Test1);catch(SafeException e)System.out.println(Test 2);finallySystem.out.println(Test 3);System.out.println(Test 4); A Test 1 B Test 2 C Test 3 D Test 445. 写出下面程序的运行结果:Hello!I love JAVA. import java.io.*;public class abc public static void main(String args ) AB s = new AB(Hello!,I love JAVA.); System.out.println(s.toString( ); class AB String s1; String s2; public AB(String str1, String str2) s1 = str1; s2 = str2; public String toString( ) return s1+s2;二单选题1. 下列哪个是JDK提供的编译器( B
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1