1、Java 程序设计练习题1Java 程序设计练习题第一章 Java 编程基础一、选择题1、可以使用【 】实用程序编译 Java 程序。Ajava Bjavac Cjavadoc Dcmd2、可以使用【 】实用程序运行 java 应用程序。Ajava Bjavac Cjavadoc Dcmd3、可以使用【 】实用程序从 Java 源文件代码中抽取 Java 文档注释,生成相应的 HTML 帮助文档。Ajava Bjavac Cjavadoc Dcmd4、Java 编译单元(源程序文件)的扩展名为【 】A.java B.class C.doc D.exe5、编译 Java 源程序文件产生的字节码文
2、件的扩展名为【 】A.java B.class C.html D.exe6、以下 Java 应用程序执行入口 main 方法的声明中,正确的是【 】A、public static void main()B、public static void main(String args)C、public static int main(String args)D、public void main(String args)7、Java 属于以下哪种语言?【 】A机器语言 B汇编语言 C高级语言 D以上都不对8、下面哪种类型的文件可以在 Java 虚拟机中运行?【 】A.java B.jre C.exe D
3、.classs9、Java 程序中声明包的关键字是【 】A、java B、package C、javadoc D、cmd10、如果 JDK 的安装路径为“d:jdk” ,若想在命令窗口中任何当前路径下,都可以直接使用 javac 和 java 命令,需要将环境变量 path 设置为以下哪个选项?【 】 A、d:jdk; B、d:jdkbin; C、d:jrebin; D、d:jre;11、下列说法中,不正确的是【 】 。A、一个 Java 源文件编译通过后,得到的结果文件数也只有一个B、一个 Java 源文件经过编译后,得到的文件的扩展名一定是.classC、一个 Java 源文件只能有一个
4、public 类定义,其类名与源文件名相同D、一个 Java 源文件可以包含多个类Java 程序设计练习题212、安装好 JDK 后,在其 bin 目录下有许多 exe 可执行文件,其中“java.exe”命令的作用是以下哪一种?【 】 。A、Java 文档制作工具 B、Java 解释器C、Java 编译器 D、Java 启动器13、以下关于变量的说法错误的是【 】A变量名必须是一个有效的标识符B变量在定义时可以没有初始值C变量一旦被定义,在程序中的任何位置都可以被访问D在程序中,可以将一个 byte 类型的值赋给一个 int 型类型的变量,不需要特殊声明14、假设 int x=2,三元表达式
5、 x0?x+1:5 的运行结果是以下哪一个?【 】A0 B2 C3 D515、下面的运算符中,用于执行除法运算的是哪个?【 】A/ B C% D*16、下面哪种写法可以实现访问数组 arr 的首个元素?【 】Aarr0 Barr(0) Carr1 Darr(1)17、以下哪个选项可以正确创建一个长度为 3 的二维数组?【 】Anew int23 Bnew int3Cnew int 3 D以上答案都不对18、关于变量的作用域,下列说法错误的是【 】A类成员变量的作用域为类定义体B方法参数的作用域为方法体C对于 for 语句中定义的变量,当 for 语句执行完时,该变量就消亡了D在方法 void
6、f(int i)的 for 语句块中,可以声明变量“int i;”19、Java 字符类型采用的是 Unicode 编码方案,每个 Unicode 码占用的位数是【 】 。A8 B16 C32 D6420、下列赋值语句中,不合法的是【 】 。Afloat f=1.2 Bfloat f2=1.2fCdouble d=1.2 Ddouble d2=1.2f二、填空题1、Java 的三个技术平台分别是_java se_、_java ee_、_javame_。2、Java 程序的运行环境简称之为_jre_。3、编译 Java 程序需要使用_javac_命令。Java 程序设计练习题34、_path_环
7、境变量用来存储 Java 的编译和运行工具所在路径,而_classpath_环境变量则用来保存 Java 虚拟机要运行的“.class”文件路径。5、在 Java 语言中,main()方法的参数是表示命令行参数的 String 数组,其中,_args0_表示第一个参数。6、Java 应用程序的入口方法是_main()_,用于控制程序的开始和结束。7、Java 系统运行时,通过_自顶垃圾收集_机制周期性地释放无用对象所使用的内存,完成对象的清除。8、Java 中的程序代码都必须在一个类中定义,类使用_class_关键字来定义。9、布尔常量即布尔类型的两个值,分别是_true_和_false_。1
8、0、Java 中的注释可分为三种类型,分别是_单行_、_多行_、_文档_。三、判断题1、Java 语言采用面向对象的思想编程,具有跨平台、分布式、多线程等优点。2、Java 语言的语法与 C 或 C+类似,也支持面向过程的程序设计技术。3、Java 提供了自动垃圾收集机制进行内存管理,减小了内存出错的可能性。4、Java 语言的平台无关性使得 Java 程序可以跨平台运行。5、Java 虚拟机是实现 Java 语言平台无关性的基础。四、简答题1、简述 JRE 与 JDK 的区别。JRE,它相当于操作系统部分,提供了 Java 程序运行时所需要的基本条件和许多 Java 基础类,如果你只想运行别
9、人开发好的 Java 程序,那么,你的计算机上必须且只需安装 JRE。它包含编译工具、解释工具、文档制作工具、打包工具等多种与开发相关的工具,是提供给 Java 开发人员使用的。初学者学习和使用 Java 语言时,首先必须下载和安装 JDK。JDK 中已经包含了 JRE 部分,初学者安装 JDK 后不必再去下载和安装 JRE 了。2、什么是方法重载?方法重载指的是在一个类中可以声明多个同名的方法,而方法中参数的个数或者数据类型不一致。调用这些同名的方法时,JVM 会根据实际参数的不同绑定到不同的方法。第二章 面向对象思想Java 程序设计练习题4一、选择题1、类的定义必须包含在以下哪种符号之间
10、?【 】A方括号 B花括号 C双引号“” D圆括号()2、在以下什么情况下,构造方法会被调用?【 】A类定义时 B创建对象时C调用对象方法时 D使用对象的变量时3、在类的继承关系中,需要遵循以下哪个继承原则?【 】A多重 B单一 C双重 D不能继承4、在 Java 语言中,以下哪个关键字用于在方法上声明抛出异常【 】A、try B、catch C、throws D、throw5、关于 super 关键字以下说法哪些是不正确的【 】 。Asuper 关键字可以调用父类的构造方法Bsuper 关键字可以调用父类的普通方法Csuper 与 this 不能同时存在于同一个构造方法中Dsuper 与 t
11、his 可以同时存在于同一个构造方法中6、类中的一个成员方法被下面哪个修饰符修饰时,该方法只能在本类被访问?【 】 。Apublic Bprotected Cprivate Ddefault7、在 Java 中,要想让一个类继承另一个类,可以使用以下哪个关键字?【 】A、inherits B、implements C、extends D、modifies8、System 类位于以下哪个包中?【 】 。A、java.io B、java.util C、java.awt D、java.lang9、以下关于继承的说法,正确的是【 】 。A继承可以避免代码复制和相关的代码维护等问题BJava 语言中一个
12、子类可以继承多个基类(多重继承)CJava 语言不允许实现多个接口D子类可以继承父类的方法,但不能重新改写父类的方法10、下列修饰符中,不能用来修饰类的是【 】 。Apublic Babstract Cfinal Dstatic二、填空题1、面向对象的三大特征是_封装_、_继承_和_多态_。2、在 Java 中,可以使用关键字_new_来创建类的实例对象。3、定义在类中的变量被称为_成员变量_,定义在方法中的变量被称为_Java 程序设计练习题5局部变量_。4、在非静态成员方法中,可以使用关键字_this_访问类的其他非静态成员。5、被 static 关键字修饰的成员变量被称为_静态变量_,它
13、可以被该类所有的实例对象共享。6、在一个类中,除了可以定义属性、方法,还可以定义类,这样的类被称为_内部类_。7、在 Java 语言中,允许使用已存在的类作为基础创建新的类,这种技术称为_继承_。8、一个类如果实现一个接口,那么它就需要实现接口中定义的全部_方法_,否则该类就必须定义成_抽象类_。9、在程序开发中,要想将一个包中的类导入到当前程序中,可以使用_import_关键字。10、一个类可以从其他的类派生出来,派生出来的类称为_子类_,用于派生的类称为_父类_或者_基类_。三、判断题1、在定义一个类的时候,如果类的成员被 private 所修饰,该成员不能在类的外部被直接访问。2、Jav
14、a 中的每个类都至少有一个构造方法,一个类中如果没有定义构造方法,系统会自动为这个类创建一个默认的构造方法。3、声明构造方法时,不能使用 private 关键字修饰。4、类中 static 修饰的变量或方法,可以使用类名或对象的引用变量访问。5、方法内部类中不能访问外部类的成员变量。四、简答题1、构造方法和普通的成员方法有什么区别?2、抽象类和接口的区别是什么?3、什么叫多态?1构造方法是类的一个特殊成员,它会在类实例化对象时被自动调用。而普通方法只有在使用的时候才会被调用。在定义构造方法时要求方法名与类名相同、在方法名的前面没有返回值类型的声明、在方法中不能使用 return 语句返回一个值
15、。2在 Java 中,使用 abstract 关键字修饰的类称之为抽象类。抽象类是不能被实例化的,通常需要写一个子类来继承抽象类,同时实例化子类来获得该类的对象。抽象类通常用于表示一种抽象的概念。接口可以说是一种特殊的抽象类,接口中只能定义常量和抽象方法。由于Java 程序设计练习题6接口的特殊性,在定义时需要使用 interface 关键字。3多态意味着一个对象有着多种形态,可以在特定的情况下,表现不同的状态,从而对应着不同的属性和方法。简单的说,多态就是使用父类类型的变量引用子类对象,根据被引用子类对象的特性,程序会得到不同的运行效果。第三章 多线程一、选择题1、Thread 类位于下列哪
16、个包中?【 】Ajava.io Bjava.lang Cjava.util Djava.awt2、线程调用 sleep()方法后,该线程将进入以下哪种状态?【 】A就绪状态 B运行状态 C阻塞状态 D死亡状态3、在以下哪种情况下,线程进入就绪状态?【 】 。A线程调用了 sleep()方法时 B线程调用了 join()方法C线程调用了 yield()方法时 D线程调用了 notify()方法4、对于通过实现 Runnable 接口创建线程,下面说法不正确的是【 】 。A、适合多个相同程序代码的线程去处理同一个资源的情况B、把线程同程序代码、数据有效的分离,很好地体现了面向对象的设计思想C、可以
17、避免由于 Java 的单继承带来的局限性D、编写简单,可以不通过 Thread 类直接创建线程5、对于死锁的描述,下面四种说法不正确的是【 】 。A当两个线程互相等待对方释放同步锁时会发生死锁 BJava 虚拟机没有检测和处理死锁的措施C一旦出现死锁,程序会发生异常D处于死锁状态的线程处于阻塞状态,无法继续运行6、下面四个选项中,不是线程进入阻塞状态的原因是【 】 。A线程试图获取某个对象的同步锁,而该锁被其他线程持有B线程调用了另一个线程的 join()方法C线程调用了一个阻塞式的 IO 方法D线程调用了 setDaemon(boolean b)方法7、要创建一个线程类,可通过继承【 】类。
18、A、Object B、Thread C、Runnable D、Task8、通过实现【 】接口,可创建一个线程类A、Object B、Thread C、Runnable D、Task9、通过重写继承的方法【 】 ,可实现线程要执行的逻辑操作。Astart() Bmain() Crun() Dexecute()Java 程序设计练习题710、通过调用线程对象实例的【 】方法,可以启动执行该线程。Astart() Bmain() Crun() Dexecute()二、填空题1、一个应用程序中有多条并发执行的线索,每条线索都被称作一个_线程_,它们会交替执行,彼此间可以进行_通信_。2、在实现多线程的
19、程序时有两种方式,一是通过继承_thread_类,二是通过实现_runnable_接口。3、yield()方法只能让相同优先级或者更高优先级、处于_就绪_状态的线程获得运行的机会。4、在 Java 语言中,同步方法需要用到关键字_synchronized_,对于同步方法而言无须指定同步锁,它的同步锁是方法所在的_对象_,也就是_this_(关键字) 。5、在 Thread 类中,start()方法用于开启一个_新线程_,当线程启动后,系统会自动调用_run()_方法。三、判断题1、当创建一个线程对象时,该对象表示的线程就立即开始运行。2、如果前台线程全部死亡,后台线程也会自动死亡。3、同步代码
20、块中的锁对象可以是任意类型的对象。4、静态方法不能使用 synchronized 关键字来修饰。5、线程结束等待或者阻塞状态后,会进入运行状态。四、简答题1、在 Java 中创建线程有几种方式?2、sleep()和 wait()有什么区别?五、分析题1、阅读下面的程序,分析代码是否能编译通过,如果能编译通过,请列出运行的结果。如果不能编译通过,请说明原因。class RunHandlerpublic void run()System.out.println(“run“);public class Testpublic static void main(String args)Java 程序设计
21、练习题8Thread t=new Thread(new RunHandler();t.start();2、阅读下面的程序,分析代码是否能编译通过,如果能编译通过,请列出运行的结果。如果不能编译通过,请说明原因。public class A extends Threadprotected void run()System.out.println(“this is run()“);public static void main(String args)A a=new A();a.start();3、阅读下面的程序,分析代码是否能编译通过,如果能编译通过,请列出运行的结果。如果不能编译通过,请说明原
22、因。public class Testprivate Object obj=new Object();public synchronized void a()tryobj.wait();System.out.println(“waiting“);catch(InterruptedException e)System.out.println(“Exception“);public static void main(String args)new Test().a();六、设计题1、声明线程类 TalkThread,循环打印线程名称 10 次(表示 10 次发言机会) ;创建测试类,创建 3 个对
23、象(表示 3 个发言人)并启动线程,观察输出结Java 程序设计练习题9果(3 个发言人的发言顺序) 。第四章 Java API一、选择题1、先阅读下面的程序片段String str=“abccdefcdh“String arr=str.split(“c“);System.out.println(arr.length);程序执行后,打印的结果是几?【 】A2 B3 C4 D52、以下都是 Math 类的常用方法,其中用于计算绝对值的方法是哪个【 】 。Aciel() Bfloor() Cabs() Drandom()3、Random 对象能够生成以下哪种类型的随机数?【 】 。Aint BSt
24、ring Cdouble DA 和 C4、String s=“abcdedcba”;则 s.subString(3,4)返回的字符串是以下选项中的哪个?【 】 。A、cd B、de C、d D、e5、假如 indexOf()方法未能找到所指定的子字符串,则返回以下选项中的哪个?【 】 。Afalse B0 C-1 D以上答案都不对6、以下 Math 类的方法中,-4.4 通过哪个方法运算后,结果为-5.0【 】 。Around() Bmin() Cfloor() Dceil()7、已知 int i=(int)(Math.random()*100),则 i 不可能为【 】 。A0 B1 C99
25、D1008、已知 String str=“abc 计算机 123”,则 str.length()的值为【 】 。A9 B10 C12 D189、已知 String a=“Hello”,String b=a.subString(0,2),则 b=【 】 。AHello BHe CHel Dnull10、下列方法中, 【 】不是 StringBuffer 类的成员方法AcompareTo() BindexOf Cappend DcharAt()二、填空题1、在 Java 中定义了两个类来封装对字符串的操作,它们分别是_和_。2、Java 中操作日期的类有Java 程序设计练习题10_、_、_。3、
26、Math 类中用于计算所传递参数平方根的方法是_。4、Java 中专门用于将日期格式化为字符串的类是_。5、Java 中用于产生随机数的类是_,它位于_包中。6、String 类中用于返回字符串字符个数的方法是_。三、判断题1、String 对象和 StringBuffer 对象都是字符串变量,创建后都可以修改。2、用运算符=比较字符串对象时,如果两个字符串的值相同,结果为 true。3、Ssytem 类中的 currentTimeMillis()方法返回一个 long 类型的值。4、Date、Calendar 以及 DateFormat 类都位于 java.util 包中。5、String
27、类的方法 replace(CharSequence str1, CharSequence str2)返回一个新的字符串,它是通过用 str2 替换此字符串中出现的所有 str1 得到的。四、简答题1、String 和 StringBuffer 有什么区别?2、Date 和 Calendar 类有什么区别和联系?第五章 集合类一、选择题1、Java 语言中,集合类都位于哪个包中?【 】Ajava.util Bjava.lang Cjava.array Djava.collections2、使用 Iterator 时,判断是否存在下一个元素可以使用以下哪个方法?【 】Anext() Bhash()
28、 ChasPrevious DhasNext()3、在程序开发中,经常会使用以下哪个类来存储程序中所需的配置?【 】AHashMap BTreeSet CProperties DTreeMap4、要想集合中保存的元素没有重复并且按照一定的顺序排列,可以使用以下哪个集合?【 】ALinkedList BArrayList CHashSet DTreeSet5、以下哪个方法不是 LinkedList 集合中定义的?【 】AgetLast() BgetFirst() Cremove(int index) Dnext()6、获取单列集合中元素的个数可以使用以下哪个方法?Alength() Bsize(
29、) Cget(int index) Dadd(Object obj)7、下列集合类型中,不允许集合中存在重复项的是【 】Java 程序设计练习题11ACollection BList CSet DQueue8、下列关于 List 接口的说法,错误的是【 】A继承 Collection 接口 B不允许重复项C支持遍历 D可以使用访问索引9、下列关于 Set 接口的说法,错误的是【 】A继承 Collection 接口 B不允许重复项C支持遍历 D可以使用访问索引10、下列关于 Collections 类的静态方法 binarySerach()的说法,错误的是【 】A使用二分搜索法搜索指定列表B如
30、果没有找到,则返回负值C查找前列表必须先排序D如果有多个相同元素,则返回第一个的索引二、填空题1、JDK 中提供了一系列可以存储任意对象的类,统称为_2、在创建 TreeSet 对象时,可以传入自定义的比较器,自定义比较器需要实现_接口。3、使用 Iterator 遍历集合时,首先需要调用_方法判断是否存在下一个元素,若存在下一个元素,则调用_方法取出该元素。4、使用 Iterator 遍历集合时,首先需要调用_方法判断是否存在下一个元素,若存在下一个元素,则调用_方法取出该元素。5、集合按照存储结构的不同可分为单列集合和双列集合,单列集合的根接口是_,双列集合的根接口是_。6、Map 集合中
31、的元素都是成对出现的,并且都是以_、_的映射关系存在。7、Iterator 有一个子类,不仅可以对集合进行从前向右遍历,还可以从后向前遍历,该类是_。8、List 集合的主要实现类有_、_,Set 集合的主要实现类有_、_,Map 集合的主要实现类有_、_。9、Map 集合中存在元素需要调用_方法,要想根据该集合的键获取对应的值需要调用_方法。10、java.util 包中提供了一个专门用来操作集合的工具类,这个类是_,还提供了一个专门用于操作数组的工具类,这个类是Java 程序设计练习题12_。三、判断题1Set 集合是通过键值对的方式来存储对象的。2集合中不能存放基本数据类型,而只能存放引
32、用数据类型。3如果创建的 TreeSet 集合中没有传入比较器,则该集合中存入的元素需要实现 Comparable 接口。4使用 Iterator 迭代集合元素时,可以调用集合对象的方法增删元素。5LinkedList 在内部维护了一个双向循环链表,每一个元素节点都包含前一个元素节点和后一个元素节点的引用。四、简答题1、集合中的 List、Set、Map 有什么区别?2、请说说 Collection 和 Collections 有什么区别?五、分析题1、分析下面的程序,然后写出程序的运行结果:import java.util.*;public class Exp0719 public stat
33、ic void main(String args) Map map = new LinkedHashMap();map.put(“1“, “Jack“); map.put(“2“, “Rose“);map.put(“3“, “Lucy“);Set keySet = map.keySet();Iterator it = keySet.iterator();while (it.hasNext() Object key = it.next();Object value = map.get(key); System.out.println(key + “:“ + value);2、分析下面的程序,然后
34、写出程序的运行结果:import java.util.*;public class Exp0720 public static void main(String args) Java 程序设计练习题13TreeMap tm = new TreeMap();tm.put(“1“, “Jack“);tm.put(“2“, “Rose“);tm.put(“3“, “Lucy“);Set keySet = tm.keySet(); Iterator it = keySet.iterator();while (it.hasNext() Object key = it.next();Object valu
35、e = tm.get(key); System.out.println(key + “:“ + value);六、设计题1、已知学生类 s6_Stud4,成员变量有 no(学号,int) 、name(姓名,String) 、chinese(语文成绩,int)和 math(数学成绩,int) 。编程,要求按总成绩降序排列,若总成绩相同,按语文成绩降序排列,并编制简单的测试类。第六章 Java IO(输入输出)一、选择题1、以下选项中,哪个是 FileOutputStream 的父类【 】AFile BFileOutput COutputStream DInputStream2、File 类中以字
36、符串形式返回文件绝对路径的方法是 【 】AgetParent() BgetName()CgetAbsolutePath() DgetPath()3、以下哪个不是 InputStream 类的方法?【 】Aint read(byte) Bvoid flush()CDataOutputStream Davailable4、以下选项中,哪个流中使用了缓冲区技术?【 】ABufferedOutputStream BFileInputStreamCDataOutputStream DFileReader5、以下选项中,哪个是 File 类 delete()方法返回值的类型?【 】Aboolean Bin
37、t CString DIntegerJava 程序设计练习题146、以下选项中,哪个文件操作类可以实现一次读入多个文件?【 】 。A、FileReader B、BufferedReaderC、FileInputStream D、SequenceInputStream7、以下对 File 类的 public boolean isFile()方法的描述,哪个是正确的【 】 。A、判断该 File 对象所对应的是否是文件B、判断该 File 对象所对应的是否是目录C、返回文件的最后修改时间D、在当前目录下生成指定的目录8、以下哪个包和 Java.nio 包共同提供了用于输入/输出流和文件操作的各种类
38、型【 】 。A、java.lang B、java.util C、java.io D、java.text9、BufferedReader 的父类是【 】 。A、Reader B、FileReader C、PipedReader D、InputStreamReader10、要确定磁盘分区的容量和可用空闲空间等信息,可以使用的类是【 】 。A、Drive B、Directory C、File D、FileOutputStream二、填空题1、Java 中的 IO 流,按照传输数据不同,可分为_和_。2、在 Java 中,_类用于操作磁盘中的文件和目录,位于_包中。3、在 Java 中,_类用来把两个
39、或更多的 InputStream输入流对象合并为单个 InputStream 输入流对象使用。4、Java 中提供了一个类_,它不但具有读写文件的功能,并且可以随机地从文件的任何位置开始执行读写数据的操作。5、在 Java 中,能实现线程间通信的流是_。6、InputStreamReader 类是用于将_流转换为_。三、判断题1、如果一个 File 表示目录下有文件或者子目录,调用 delete()方法也可以将其删除。2、装饰设计模式中,装饰对象应该包含一个被装饰对象的引用。3、使用 ObjectInputStream 与 ObjectOutputStream 类来读取或存储的对象必须要实现
40、Serializable 接口,否则程序将出现 NotSerializableException 异常。4、InputStream 类的 close()方法是用于关闭流并且释放流所占的系统资源。Java 程序设计练习题155、一般来说,把字符转换成计算机识别的字节序列称为解码,而把字节序列转换为普通人能看懂的明文字符称为编码。四、简答题1、Java 流被分为字节流、字符流两大流类,两者有什么区别?六、设计题1、创建新的文本文件 myFile.txt,从控制台输入内容并写入源文件中,然后读取并显示 myFile.txt 内容。2、在指定的文本文件中查找指定的关键字,并打印包含结果的行。文本文件和
41、关键字均由命令行参数指定。第七章 GUI(图形用户界面)一、选择题1、下面四个组件中哪一个不是 Component 的子类?【 】AButton BDialog CLabel DMenuBar2、每个 GUI 程序中必须包含一个什么组件【 】A按钮 B标签 C菜单 D容器3、当鼠标按键被释放时,会调用以下哪个事件处理器方法?【 】AmouseReleased() BmouseUp()CmouseOff DmouseLetGo4、ActionEvent 的对象会被传递给以下哪个事件处理器方法?【 】AaddChangeListener() BaddActionListener()CstateCh
42、anged() DactionPerformed()5、下面哪个不是 FlowLayout 类中表示对齐方式的常量?【 】AFlowLayout.LEFT BFlowLayout.CENTERCFlowLayout.VERTICAL DFlowLayout.RIGHT6、下面对 Swing 的描述,不正确的是【 】 。A、Swing 是在 AWT 基础上构建的一套新的图形界面系统B、Swing 提供了 AWT 所能够提供的所有功能C、Swing 组件是用 Java 代码来实现的D、Swing 组件都是重量级组件7、下面四对 AWT 和 Swing 对应组件中,错误的是【 】 。A、Button
43、 和 JButton B、Dialog 和 JDialogC、MenuBar 和 JMenuBar D、ComboBox 和 JComboBox8、使用下面哪个组件可以接收用户的输入信息【 】 。Java 程序设计练习题16A、JButton B、JLabel C、JTextField D、以上都可以9、JFrame 的默认布局管理器为【 】 。A、BorderLayout B、FlowLayout C、BoxLayout D、GridLayout10、Japplet 的默认布局管理器为【 】 。A、BorderLayout B、FlowLayout C、BoxLayout D、GridLay
44、out11、Jpanel 的默认布局管理器为【 】A、BorderLayout B、FlowLayout C、BoxLayout D、GridLayout12、将组件垂直摆放在一列或水平摆放在一行中的布局管理器是【 】A、BorderLayout B、FlowLayout C、BoxLayout D、GridLayout13、下列事件中,不属于低级事件【 】 。AKeyEvent BMouseEvent CWindowevent DActionEvent14、在类中若要处理 ActionEvent 事件,则该类需要实现的接口是【 】AAction BRunnable CSerializable
45、 DActionListener15、下列关于事件的说法中,不正确的是【 】A一个组件可以引发多种事件B一个组件可以注册多个事件监听器C一个监听器只能监听一个组件D一个监听器可以监听处理多种事件二、填空题1、在 Java 中,图形用户界面简称_,它的组件包含在_和_这两个包中。2、为了避免实现监听器中定义的所有方法,造成代码的臃肿,在 JDK 中提供了一些_类,这些类实现了接口所有的方法,但是方法中没有任何代码,属于一种空实现。3、在 Java 中,_类相当于一个抽象的画笔对象,使用它可以在组件上绘制图形。4、_负责监听事件源上发生的事件,并对各种事件做出响应处理。5、在部分的 Swing 组件都是_类的直接或者间接子类,其名称都是在原来 AWT 组件名称前加上字母 J。三、判断题1、容器(Container)是一个可以包含基本组件和其他容器的组件。2、可以通过实现 ActionListener 接口或者继承 ActionAdapter 类来实现动作事件监听器。Java 程序设计练习题173、CardLayout 布局管理器将界面看做一系列卡片,在任何时候只有其中一张卡片是可见的。4、非模态对话框是指用户需要等到处理完对话框后