Java高级程序设计期末复习重点

版权申诉
0 下载量 108 浏览量 更新于2024-06-27 1 收藏 240KB DOCX 举报
"Java高级程序设计期末复习题涵盖了Java GUI编程、对象序列化、组件、容器、布局管理器以及网络通信等相关知识点。" 在Java高级程序设计中,以下几个关键概念和知识点是考试的重点: 1. **Java对象序列化**:Java.io.Serializable接口是Java中用于实现对象序列化的标准方式。如果一个类实现了这个接口,它的实例就可以被序列化,即转化为字节流,以便存储或在网络中传输。 2. **GUI组件和容器**:`java.awt`包提供了构建图形用户界面的基础,如Container类,它是所有容器组件的基类,能够包含其他组件。例如,Panel是Container的子类,但其默认布局管理器并非GridLayout。 3. **Swing与AWT**:Swing是Java GUI的一部分,提供了更丰富的组件集。Swing组件是轻量级的,比AWT的组件更高效,它们通常添加到内容面板(contentPane)而不是直接添加到顶层容器。例如,JFrame是Swing中的顶级容器,而AWT中的Frame则属于重量级组件。 4. **布局管理器**:Java GUI中的组件需要进行有效的布局,这由各种布局管理器完成,如FlowLayout、GridLayout等。FlowLayout是最简单的,按顺序放置组件,而GridLayout以网格形式排列组件。布局管理器的属性可以动态改变,容器也可以有且只有一个布局管理器。 5. **组件继承结构**:Component类是所有用户界面组件的基类,包括重型组件(AWT)和轻量级组件(Swing)。例如,JCheckBox继承自AbstractButton类,提供复选框功能;JTextArea允许用户输入多行文本;JSlider类似于JScrollPane,但提供更多选项和显示方式。 JTextField是单行文本输入组件,继承自JTextComponent,而JTextComponent又继承自JComponent。 6. **网络通信**:在Java中,使用UDP通信时,可以通过DatagramPacket类封装数据,然后发送。UDP是一种无连接的协议,适合对实时性要求高的应用。 7. **框架与Applet**:Java小应用程序可以是JFrame的子类,作为独立的应用运行,或者作为Applet嵌入到网页中。创建用户界面时,通常需要一个容器(如JFrame)来承载组件。 复习这些知识点对于理解和编写Java高级程序至关重要,它们涉及到Java GUI设计的核心原理和实际应用。理解这些概念和用法将有助于开发出功能丰富、用户友好的Java应用程序。
2023-05-30 上传
文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持. 【关键字】设计 Java高级程序设计第二学期 期末复习题 判断题 1. 2. java.awt包是Java语言用来构建图形用户界面(GUI)的类库。( ) 3. 容器,一个容器可以容纳多个构件,并使他们成为一个整体。( ) 4. Java中所有的类都是通过直接或间接地继承 5. Java的图形用户界面的最基本的组成部分就是构件(Component)。( ) 6. 在Swing中用重量级的构件替代了AWT中的轻量级的构件。(X) 7. 与AWT构件不同,Swing构件不能直接添加到顶层容器中,它必须添加到一个与Swing顶层容器相关联的内容面板(contentPane)上。( ) 8. 类Panel默认的布局管理器是GridLayout。(X) 9. 每个Java小应用程序必须定义为Jframe类的子类。( ) 10. 使用UDP通信时,用DatagramPacket类把要发送的信息打包。( ) 11.AWT组件称为重型组件( ) 12.Swing组件称为轻型组件( ) 13.容器类不是GUI组件(X) 14.使用add方法可以在框架的内容窗格中添加组件( ) 15.FlowLayout 是最简单的布局管理器( ) 16.布局管理器GridLayout不是以网格(矩阵)的形式排列组件(X) 17.布局管理器的属性不可以动态的改变(X) 18.每一时刻,一个容器只能有一个布局管理器( ) 19.要创建一个用户界面,需要创建一个框架或applet来存放用户界面组件( ) 20.Component类是所有用户界面的父类( ) 21. JFrame实例可以添加到容器中。( F ) 22. JCheckBox继承了AbstractButton类的所有属性。( T ) 23. JTextArea可以让用户输入多行文字。( T ) 24. JSlider与JScrollbor类似,但是JSlider具有更多的属性和更多是显示形式。( T ) 25.JTextField类继承了JTextComponent类,而JTextComponent类继承JComponent类。( T ) 26. 从应用程序创建一个子窗口,不用先创建JFrame的一个子类。( F ) 27. 在一个文本域中按下回车键就触发了ActionEvent事件。( T ) 28. Java使用事件委托处理模型来处理事件,源东西和监听东西可以是同一个东西。( T ) 29. JDBC是指Java程序与数据库连接的一种机制。( T ) 30.可以给一个面板添加框架。(F ) 31. File类提供实现文件读写的操作方法。 (T) 32. (T) 33.垂直文本位置指定文本相对于图标的垂直位置。(T) 34.不可以同时设置按钮上的文本和图标。(F) 35.标签是显示一小段文字、一幅图片或者二者皆有的区域。(T) 36.组合框是包含项目的一个列表,用户可以从中进行选则。(T) 37. 用read()方法读取文件内容时,返回-1表示文件结束。(F) 【设计】java高级程序设计期末复习题全文共16页,当前为第1页。38. PrintWriter类和PrintStream类可以以文本方式输入基本类型数据值、字符串和东西。(F) 【设计】java高级程序设计期末复习题全文共16页,当前为第1页。 39. 代表优先级的常数值越大优先级越低 (F) 40. 线程一旦被创建,则自动运行 (F ) 二、单选题 1、下列关于Java线程的说法那些是正确的( B ) A、每一个Java线程可以看成由代码、一个真实的CPU以及数据三部份组成。 B、创建线程的两种方法中,从Thread类中继承的创建方式可以防止出现多父类问题。 C、Thread类属于java.util程序包。 D、以上说法无一正确。 2、运行下列程序, 会产生什么结果?( D ) public class X extends Thread implements Runable{ public void run(){ "this is run()"); } public static void main(String args[]) { Thread t=new Thread(new X()); t.start(); } } A、第一行会产生编译错误 B、第六行会产生编译错误 C、第六行会产生运行错误 D、程序会运行和启动 3、下列选项中,用于定义接口的关键字是( C ) A、import B、implements C、interface D、protected 4.定义类头时能使用的修饰符是( C )。 A) private B) static C) abstract D) pr
2023-05-29 上传
Java程序设计复习题全文共7页,当前为第1页。Java程序设计复习题全文共7页,当前为第1页。java程序设计复习题 Java程序设计复习题全文共7页,当前为第1页。 Java程序设计复习题全文共7页,当前为第1页。 一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.下列语句序列执行后,k 的值是( B )。 int m=3, n=6, k=0; while( (m++) < ( -- n) ) ++k; A) 0 B) 1 C) 2 D) 3 2.设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( B )。 A) i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 3.Java语言的类间的继承关系是( B )。 A) 多重的 B) 单重的 C) 线程的 D) 不能继承 4.设有定义 int i = 6 ;,则执行以下语句后,i 的值为( C )。 i += i - 1; A) 10 B) 121 C) 11 D) 100 5.下列选项中,用于在定义子类时声明父类名的关键字是( C )。 A)interface B) package C) extends D) class 6.若已定义 byte[ ] x= {11,22,33,-66} ; 其中0 k 3,则对x数组元素错误的引用是( C )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0] 7.下列语句序列执行后,ch1 的值是( B )。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B 8.下列语句序列执行后,i 的值是( D )。 int i=8, j=16; if( i-1 > j ) i--; else j--; A) 15 B) 16 C) 7 D) 8 9.关于JAVA语言的叙述,下面哪个是不正确的?( B ) A、java语言提供的编译器不针对特定的操作系统进行编译。 B、字节码就是机器指令。 C、java虚拟机负责解释、运行字节码。 D、java内置对多线程的支持。 10.下面语句执行后,i 的值是( B )。 for( int i=0, j=1; j < 5; j+=3 ) i=i+j; A) 4 B) 5 C) 6 D) 7 11.设有定义 float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true的是( B )。 A) x > y "" x > z B) x != y C) z > ( y + x ) D) x < y & ! ( x < z ) 12.下列语句序列执行后,i的值是( D )。 int i=16; do { i/=2; } while( i > 3 ); A) 16 B) 8 C) 4 D) 2 Java程序设计复习题全文共7页,当前为第2页。Java程序设计复习题全文共7页,当前为第2页。 13.以下由 for 语句构成的循环执行的次数是( B )。 for ( int i = 0; true ; i++) ; Java程序设计复习题全文共7页,当前为第2页。 Java程序设计复习题全文共7页,当前为第2页。 A) 有语法错,不能执行 B) 无限次 C) 执行1次 D) 一次也不执行 14.定义类头时能使用的修饰符是(C )。 A) private B) static C) abstract D) protected 15.设int 型变量 a、b,float 型变量 x、y,char 型变量 ch 均已正确定义并赋值, 正确的switch语句是(D )。 A) switch (x + y) B) switch ( ch + 1 ) C) switch ch D) switch ( a + b ); { ...... } { ...... } { ...... } { ...... } 16. 以下关于继承和接口的叙述正确的是( D )。 A、在Java中接口不允许被继承。 B、在Java中一个类只能实现一个接口。 C、在Java中一个类不能同时继承一个类和实现一个接口。D、在Java中类只允许单一继承。 17. 下列类定义中,不正确的是(C )。 A) class x { .... } B) class x extends y { .... } 1 C) static class x implements y1,y2 { .... } D) public class x extends Applet { .... }