《JAVA程序设计期末习题集 .doc》由会员分享,可在线阅读,更多相关《JAVA程序设计期末习题集 .doc(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第5章 Java标准类库习 题 五一、简答题1计算调用下列方法的结果。(4); / 2.0(4, 3); / 64.0(2, (3, 4); / 32下列程序中构造了一个set并且调用其方法add(),输出结果是( 2 )。import .*;public class T1_2 public int hashCode() return 1;public boolean equals(Object b) return true;public static void main(String args) Set set = new HashSet();(new T1_2();(new String(
2、ABC);(new T1_2();.println();3Collection有哪几种主要接口? (Collection、List、Map、Set)4基本的集合接口有哪些?5映射、集合和列表的含义是什么?6HashMap类和TreeMap类有何区别?7HashSet类和Treeset类有何区别?8ArrayList类和LinkedList类有何区别?二、选择题1可实现有序对象的操作有哪些?( CD )AHashMap BHashSet CTreeMap DLinkedList2迭代器接口(Iterator)所定义的方法是( ABC )。AhasNext() Bnext()Cremove() D
3、nextElement()3下列方法属于.Math类的有(方法名相同即可)( ABCD )。Arandom() Babs() Csqrt() Dpow()4指出正确的表达式有( AB )。Adouble a=2.0; BDouble a=new Double(2.0);Cbyte A= 350; DByte a = 120;5System类在哪个包中?( B )A B C D6关于Float,下列说法不正确的是( B )。AFloat在包中 BFloat a=1.0是正确的赋值方法CFloat是一个类 DFloat a= new Float(1.0)是正确的赋值方法三、判断题1Map接口是自C
4、ollection接口继承而来。( )2集合Set是通过键-值对的方式来存储对象的。( )3Integer i = (Of(926).intValue();( )4String s = (Of(3.).toString(); ( )5Integer I = Int(926);( )6Arrays类主要对数组进行操作。( )7在集合中元素类型必须是相同的。( )8集合中可以包含相同的对象。( )9枚举接口定义了具有删除功能的方法。( )第6章 Java GUI程序设计习 题 六一、填空题1Swing的事件处理机制包括(事件源)、事件和事件监听者。2Java事件处理包括建立事件源、(建立事件监听器
5、)和将事件源注册到监听器。3在Swing中,可以根据不同用户的习惯,设置不同的界面显示风格,Swing提供了三种显示风格,分别是(Metal风格)风格、( Motif风格)风格和(Windows风格)风格。4Swing的顶层容器有(JFrame)、JApplet、JWindow和JDialog。5(根面板)由一个玻璃面板、一个内容面板和一个可选择的菜单条组成。二、简答题1试述AWT的事件处理机制。2什么是Swing?它比AWT有什么优点?使用上有何区别?3布局管理器的作用是什么?在JDK中哪些常用布局管理器?各有何特点?4什么是容器组件?组件与容器有何区别?5试述Swing常用组件的创建与使用
6、。三、选择题1Swing组件必须添加到Swing顶层容器相关的( B )。A分隔板上 B内容面板上 C选项板上 D复选框内2Panel和Applet的默认布局管理器是( A )。AFlowLayout BCardLayout CBorderLayout DGridLayout3容器类.container的父类是( C )。A.Frame B.Panel C.Componet D.Windows4哪些布局管理器使用的是组件的最佳尺寸?( AE )AFlowLayout BBorderLayout CGridLayout DCardLayout EGridBagLayout5关于AWT和Swing
7、说法正确的是( CD )。ASwing是AWT的子类 BAWT在不同操作系统中显示相同的风格CAWT和Swing都支持事件模型 DSwing在不同的操作系统中显示相同的风格6关于使用Swing的基本规则,下列说法正确的是( D )。ASwing组件可直接添加到顶级容器中B要尽量使用非Swing的重要级组件CSwing的Jbutton不能直接放到Frame上D以上说法都对7在Java编程中,Swing包中的组件处理事件时,下面( A )是正确的。ASwing包中的组件也是采用事件的委托处理模型来处理事件的BSwing包中的组件产生的事件类型,也都带有一个J字母,如JMouseEventCSwin
8、g包中的组件也可以采用事件的传递处理机制DSwing包中的组件所对应的事件适配器也是带有J字母的,如JMouseAdapter8在Java图形用户界面编程中,若显示一些不需要修改的文本信息,一般是使用( A )类的对象来实现。 A、JLabel B、JButton C、JTextArea D、JTextField9 创建一个标识有“关闭”按钮的语句是( D )。A、TextField b = new TextField(“关闭”);B、Label b = new Label(“关闭”);C、Checkbox b = new Checkbox(“关闭”);D、Button b = new But
9、ton(“关闭”);10、请问如下哪个方法可以将MenuBar加入Frame中?(B) A、setMenu() B、setMenuBar() C、add() D、addMenuBar()11 下列属于容器的组件有(B)A JButtonB JPanelC 线程D JTextArea12.如果希望所有的控件在界面上均匀排列,应使用下列那种布局管理器?(B) A)BoxLayoutB)GridLayoutC)BorderLayoutD)FlowLouLayout四、判断题1容器是用来组织其他界面成分和元素的单元,它不能嵌套其他容器。( )2一个容器中可以混合使用多种布局策略。( )3在Swing用
10、户界面的程序设计中,容器可以被添加到其他容器中去。( )4使用BorderLayout布局管理器时,GUI组件可以按任何顺序添加到面板上。( )5在使用BorderLayout时,最多可以放入五个组件。( )6每个事件类对应一个事件监听器接口,每一个监听器接口都有相对应的适配器。( )7Java中,并非每个事件类都只对应一个事件。( )第7章 Java Applet及其应用习 题 七一、填空题1Applet生命周期方法有init()、( start() )、stop()和destroy()。2与显示相关的Applet方法有(paint() )、repaint()和update()。二、简答题1
11、init()方法在Java Applet中起什么作用?2Java Applet中的主要方法是哪几个?3Java Applet生命周期包括哪几个阶段?4Java Applet在安全性方面进行了哪些限制?5Java Applet是怎样嵌入HTML文件中的?在HTML文件中至少有哪些说明?6Java Applet和Application有何区别?是否可以将Java Applet改写成Java Application程序?三、选择题1下列操作中,不属于Applet安全限制的是( A )。A与同一个页面中的Applet通信 B加载本地库C运行本地可执行程序 D读写本地文件系统2为了向一个Applet传递
12、参数,可以在HTML文件的APPLET标志中使用PARAM选项。在Applet程序中获取参数时,应使用的方法是( B )。AgetDocumentBase() BgetParameter( ) CgetCodeBase DgetImage()3下面关于Applet的说法正确的是( C )。AApplet能访问本地文件 BApplet也需要main方法CApplet必须继承自.Applet DApplet程序不需要编译4编译Java Applet源程序文件产生的字节码文件的扩展名为( B )。Ajava B. class C. html D. exe5在Java Applet程序用户自定义的Ap
13、plet子类中,常常重载( D )方法在Applet的界面中显示文字、图形和其他界面元素。Astart( ) Bstop( ) Cinit( ) Dpaint( )6在编写Java Applet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上( D )语句。Aimport .* ; Bimport t.* ;Cimport .* ; Dimport .event.* ;7在浏览器中执行Applet 程序四个方法里最先执行的是( A )。Ainit() Bstart() Cdestroy() Dstop()四、判断题1Applet的执行离不开一定的HTML文件。( )2Appl
14、et可以运行本地机器上的可执行程序( )3Java Applet不能够存取客户机磁盘上的文件。( )4Applet可以运行在浏览器中。( )5Applet的两个方法getCodeBase( )和getDocumentBase( )的返回值都是URL类的对象,且二者返回的都是相同的URL地址。( )6Applet是一种特殊的Panel,它是Java Applet程序的最外层容器。( )7Java Applet是由独立的解释器程序来运行的。( )8Java Applet只能在图形界面下工作。( )第9章 Java多线程技术习 题 九一、选择题1运行下列程序,会产生什么结果?( A )1) publ
15、ic class Exercises3_1 extends Thread implements runable 2) public void run() 3) .println(this is run(); 4) 5) public static void main(String args) 6) Thread t = new Thread(new Exercises3_1(); 7) t.start(); 8) 9) A第一行会产生编译错误 B第六行会产生编译错误 C第六行会产生运行错误 D程序会运行和启动2线程在生命周期中要经历五种状态,若线程当前是新建状态,则它可以到达的下一个状态是(
16、B )。A运行状态 B可运行状态 C阻塞状态 D终止状态3下列关于Java多线程并发控制机制的叙述中,错误的是( D )。AJava中没有提供检测与避免死锁的专门机制,但应用程序可以采用某些策略防止死锁的发生B共享数据的访问权限都必须定义为privateCJava中对共享数据操作的并发控制是采用加锁技术D线程之间的交互,提倡采用suspend()/resume()方法4哪个关键字可以对对象加互斥锁?( C )Atransient Bserialize Csynchronized Dstatic5下面哪些方法可用于创建一个可运行的多线程类?( AB )Apublic class T implem
17、ents Runable public void run() Bpublic class T extends Thread public void run() Cpublic class T implements Thread public void run() Dpublic class T implements Thread public int run(). Epublic class T implements Runable protected void run() 6下面哪些方法可以在任何时候被任何线程调用?( ABC )Asleep() Byield() Csynchronized
18、(this) Dnotify() Ewait() FnotifyAll() 7下列哪些情况可以终止当前线程的运行?( BCD )A当创建一个新线程时 B当该线程调用sleep()方法时C抛出一个异常时 D当一个优先级高的线程进入就绪状态时8、以下哪个方法用于定义线程的执行体?(C)A、start()B、init()C、run()D、main()三、判断题1一个Java多线程的程序不论在什么计算机上运行,其结果始终是一样的。( )2Java线程有五种不同的状态,这五种状态中的任何两种状态之间都可以相互转换。( )3所谓线程同步就是若干个线程都需要使用同一个synchronized修饰的方法。(
19、)4使用Thread子类创建线程的优点是可以在子类中增加新的成员变量,使线程具有某种属性,也可以在子类中新增加方法,使线程具有某种功能。但是,Java不支持多继承,Thread类的子类不能再扩展其他的类。( )5Java虚拟机(JVM)中的线程调度器负责管理线程,调度器把线程的优先级分为10个级别,分别用Thread类中的类常量表示。每个Java线程的优先级都在常数1和10之间,即_PRIORITY和_PRIORITY之间。如果没有明确地设置线程的优先级别,每个线程的优先级都为常数8。( )6当线程类所定义的run( )方法执行完毕,线程的运行就会终止。( )7线程的启动是通过引用其start
20、()方法而实现的。( )第10章 Java输入输出技术习 题 十一、简答题1什么叫流?简述流的分类。2能否将一个对象写入一个随机访问文件?3BufferedReader流能直接指向一个文件对象吗?为什么?4字节流和字符流之间有什么区别?5简述可以用哪几种方法对文件进行读写。6从字节流到字符流的转化过程中,有哪些注意事项?二、选择题1实现字符流的写操作类是( B ),实现字符流的读操作类是( A )。AFileReader BWriter CFileInputStream DFileOutputStream2要从“”文件中读出第10个字节到变量c中,下列哪个方法适合? ( C )AFileInp
21、utStream in=new FileInputStream(); int c=in.read(); BRandomAccessFile in=new RandomAccessFile(); in.skip(9); int c=in.readByte();CFileInputStream in=new FileInputStream(); in.skip(9); int c=in.read(); DFileInputStream in=new FileInputStream(); in.skip(10); int c=in.read();3构造BufferedInputStream的合适参数
22、是哪些?( AC )ABufferedInputStream BBufferedOutputStream CFileInputStreamDFileOuterStream EFile4在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( C )语句。Aimport .* ; Bimport t.Applet ;Cimport .* ; Dimport .Graphics ;5下列流中哪个不属于字符流?( )AInputStreamReader BBufferedReaderCFilterReaderDFileInputStream 6字符流与字节流
23、的区别在于( )。A前者带有缓冲,后者没有 B前者是块读写,后者是字节读写C二者没有区别,可以互换使用 D每次读写的字节数不同7、以下类 DataInputStream的构造方法正确的是(C) A. new DataInputStream(“in.txt”); B. new DataInputStream(new file(“in.txt”); C. new DataInputStream(new FileInputStream(“in.txt”);D. new DataInputStream(new FileWriter(“in.txt”);三、判断题1文件缓冲流的作用是提高文件的读/写效率
24、。( )2通过File类可对文件属性进行修改。( )3IOException必须被捕获或抛出。( )4Java系统的标准输入对象是,标准输出对象有两个,分别是标准输出和标准错误输出。( )5对象串行化机制是指将程序中对象的状态转化为一个字节流,存储在文件中。( )6Serializable接口是个空接口,它只是一个表示对象可以串行化的特殊标记。( )第11章 网络编程技术习 题 十 一一、填空题1URL类的类包是(.URL)。2le()方法的作用是(获得URL实例的文件名)。3rt()方法的作用是(获得URL实例的端口号)。4Sockets技术是构建在( TCP )协议之上。5Datagram
25、s技术是构建在( UDP )协议之上。6t()返回( Socket )对象,使服务器与客户端相连。7为了实现组播通信,包中有相应的( MulticastSocket )类。8RMI的英文全称是( Remote Method Invocation,远程方法调用)。9启动RMIRegistry服务器的命令是( Start RMIRegistry )。三、选择题1若对Web页面进行操作,一般会用到的类是( CD )。ASocket BDatagramSocket CURL DURLConnection2在套接字编程中,客户方需用到Java类( C )来创建TCP连接。AServerSocket BD
26、atagramSocketCSocket DURL3在套接字编程中,服务器方需用到Java类( C )来监听端口。ASocket BURLCServerSocket DDatagramSocket4URL类的getHost方法的作用是( A )。A返回主机的名字 B返回网络地址的端口C返回文件名 D返回路径名5URL类的getRef方法的作用是( A )。A返回网页的特定地址 B返回主机的名字C返回路径名 D返回协议的名字6Socket类的getOutputStream方法的作用是( B )。A返回文件路径 B返回文件写出器C返回文件大小 D返回文件读入器7Socket类的getInputSt
27、ream方法的作用是( D )。A返回文件路径 B返回文件写出器C返回文件大小 D返回文件读入器8DatagramSocket类的receive方法的作用是( B )。A根据网络地址接收数据包 B根据网络地址与端口接收数据包C根据端口接收数据包 D根据网络地址与端口发送数据包9、一个URL地址为::80/local/,则其中http的含义为( A ) A、通信协议 B、参考点 C、机器名称 D、通信端口四、程序填空1下面是基于套接字的服务端程序接收客户程序请求后创建连接,服务程序将收到的信息在屏幕上打印出来,并回送给客户程序,请在标号处完成程序编写。package .t;import .*;i
28、mport .*;public class ServerSocketDemo public static final int PORT = 28080; public static void main(String args) throws IOException (1)new ServerSocket(PORT) ServerSocket serversocket = (1) ; .println(Started serversocket: + serversocket); try (2)t() Socket socket = (2) ; try .println(TCPConnection
29、 accepted from: + socket);(3)putStream() BufferedReader in = new BufferedReader(new InputStreamReader( (3) ); PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(tputStream(), true); while (true) String str = in.readLine(); if (s(End Communications) break; .println(Receive fr
30、om Client: + str); ln(Echoing from Server: + str ); finally .println(Communications Closing.); (); finally (4)() (4) ; 2下面是基于套接字的客户端程序,客户程序向服务程序发出连接请求,在连接创建后向服务程序发送信息并接收服务程序的回声在屏幕上打印出来,请在标号处完成程序编写。import .*;import .*;public class ClientSocketDemo public static void main(String args) throws IOExcepti
31、on InetAddress ipaddress = Name(null); .println(ipaddress = + ipaddress);(1)new Socket Socket socket = (1) (ipaddress, ); try .println(socket : + socket);(2)putStream() BufferedReader in = new BufferedReader(new InputStreamReader( (2) ); PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(tputStream(), true); for (int i = 0; i 10; i+) (3)ln (3) (Message + i);(4)in.readLine() String str = (4) (); .println(str); ln(End Communications); finally .println(Communications closing.); ();
限制150内