Java语言.doc_第1页
Java语言.doc_第2页
Java语言.doc_第3页
Java语言.doc_第4页
Java语言.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Java语言离线作业三一、单项选择1) 欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?( B ) A ArrayList myList=new Object(); B List myList=new ArrayList(); C ArrayList myList=new List(); D List myList=new List(); 2) paint()方法使用哪种类型的参数? ( A ) A Graphics B Graphics2D C String D Color 3) 指出正确的表达式 ( C ) A byte=128; B Boolean=null; C long l=0xfffL; D double=0.9239d; 4) 指出下列程序运行的结果 public class Example String str=new String(good); charch=a,b,c; public static void main(String args) Example ex=new Example(); ex.change(ex.str,ex.ch); System.out.print(ex.str+ and ); Sytem.out.print(ex.ch); public void change(String str,char ch) str=test ok; ch0=g; ( B ) A good and abc B good and gbc C test ok and abc D test ok and gbc 5) 运行下列程序, 会产生什么结果 public class X extends Thread implements Runable public void run() System.out.println(this is run(); public static void main(String args) Thread t=new Thread(new X(); t.start(); ( A ) A 第一行会产生编译错误 B 第六行会产生编译错误 C 第六行会产生运行错误 D 程序会运行和启动 6) 要从文件 file.dat文件中读出第10个字节到变量C中,下列哪个方法适合? ( A ) A FileInputStream in=new FileInputStream(file.dat); in.skip(9); int c=in.read(); B FileInputStream in=new FileInputStream(file.dat); in.skip(10); int c=in.read(); C FileInputStream in=new FileInputStream(file.dat); int c=in.read(); D RandomAccessFile in=new RandomAccessFile(file.dat); in.skip(9); int c=in.readByte(); 7) 容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?( B ) A CardLayout B FlowLayout C BorderLayout D GridLayout 8) 给出下面代码: public class Person static int arr = new int10;public static void main(String a) System.out.println(arr1); 那个语句是正确的?( C ) A 编译时将产生错误; B 编译时正确,运行时将产生错误; C 输出零; D 输出空。 9) 哪个关键字可以对对象加互斥锁?( B ) A transient B synchronized C serialize D static 10) 下列哪些语句关于内存回收的说明是正确的? ( B ) A 程序员必须创建一个线程来释放内存; B 内存回收程序负责释放无用内存 C 内存回收程序允许程序员直接释放内存 D 内存回收程序可以在指定的时间释放内存对象 11) 下列代码哪几行会出错: 1) public void modify() 2) int I, j, k; 3) I = 100; 4) while ( I 0 ) 5) j = I * 2; 6) System.out.println ( The value of j is + j ); 7) k = k + 1; 8) I-; 9) 10) ( C ) A line 4 B line 6 C line 7 D line 8 12) MAX_LENGTH是int型public成员变量, 变量值保持为常量100,用简短语句定义这个变量。 ( D ) A public int MAX_LENGTH=100; B final int MAX_LENGTH=100; C final public int MAX_LENGTH=100; D public final int MAX_LENGTH=100. 二、多项选择题1) 执行下列代码后,哪个结论是正确的 String s=new String10; ( BD ) A s10 为 ; B s9 为 null; C s0 为 未定义 D s.length 为10 2) 下面的表达式哪个是正确的? ( AE ) A String s=你好;int i=3; s+=i; B String s=你好;int i=3; if(i=s) s+=i; C String s=你好;int i=3; s=i+s; D String s=你好;int i=3; s=i+; E. String s=null; int i=(s!=null)&(s.length0)?s.length():0; 3) 选出合理的标识符 ( AC ) A _sys1_lll B 2mail C $change D class 4) 哪个布局管理器使用的是组件的最佳尺寸( preferred size)( AE ) A FlowLayout B BorderLayout C GridLayout D CardLayout E.GridBagLayout 5) 下列哪个方法可用于创建一个可运行的类? ( AE ) A public class X implements Runable public void run() . B public class X implements Thread public void run() . C public class X implements Thread public int run() . D public class X implements Runable protected void run() . E.public class X implements Thread public void run() . 6) 下面哪个方法可以在任何时候被任何线程调用? ( DEF ) A notify() B wait() C notifyAll() D sleep() E.yield() F.synchronized(this) 7) 构造BufferedInputStream的合适参数是哪个? ( AC ) A BufferedInputStream B BufferedOutputStream C FileInputStream D FileOuterStream E. File 8) 下列说法正确的是 ( BC ) A java.lang.Clonable是类 B java.lang.Runnable是接口 C Double对象在java.lang包中 D Double a=1.0是正确的java语句 9) 指出正确的表达式 ( AB ) A double a=1.0; B Double a=new Double(1.0); C byte a = 340; D Byte a = 120; 10) 定义一个类名为MyClass.java的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为: ( CD ) A private class MyClass extends Object B class MyClass extends Object C public class MyClass D public class MyClass extends Object 11) 指出下列哪个方法与方法public void add(int a)为合理的重载方法。( CD ) A public int add(int a) B public void add(long a) C public void add(int a,int b) D public void add(float a) 12) 如果下列的方法能够正常运行,在控制台上将显示什么?( ACD ) public void example() try unsafe(); 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 4 13) 下列哪些情况可以终止当前线程的运行? ( ABD ) A 抛出一个例外时。 B 当该线程调用sleep()方法时。 C 当创建一个新线程时。 D 当一个优先级高的线程进入就绪状态时。 三、判断题1) 已建立的URL对象不能被改变。( T)2) UDP是面向连接的协议。( F)3) 进程利用流socket建立与其他进程的连接。(T )4) 服务器在一个端口等待客户的连接。(T )5) 数据报传输是可靠的,包按顺序先后达到。( F)6) BorderLayout是面板的缺省布局管理器。(T )7) 当鼠标指针位于一个GUI构件的边上时,发生一个MouseOver事件。( F)8) 一个面板(JPanel)不能被加入到另一个面板(JPanel)中。(F )9) 在BorderLayout中,添加到NORTH区的两个按钮将并排显示。( F)10) 在使用BorderLayout时,最多可以使用5个构件。(T )11) C和Java都是多线程语言。( F)12) 如果线程死亡,它便不能运行。(T )13) 在Java中,高优先级的可运行线程会抢占低优先级线程。( T)14) Windows和Windows NT的Java系统使用分时的方法。因此可以使某一线程抢占具有相同优先级的线程。(F )15) 线程可以用yield使低优先级的线程运行。(F )16) 类和方法一般可以实现满足所有用户需要的错误处理。(F )17) 当资源不再需要时,一个执行程序却不能恰当地释放他,就会出现资源泄露。( T)18) 不基于GUI的应用程序会终止,applet或基于GUI的应用程序会重新开始一般事件处理。(T )19) 发出一个异常是否一定会是程序终止。(F )20) Java异常处理适用于方法检查到一个错误却不能解决它的场合,这时该方法会抛出一个异常,但不能保证会有一个异常处理程序恰好适合于处理此类异常。(T )21) 程序员必须创建System .in,System .out和System .err对象。(F )22) 如果顺序文件中的文件指针不是指向文件头,那么必须先关闭文件,然后在再打开它才能从文件头开始读。( T)23) 在随机存取中查找指定记录时不必检查每一条记录。(T )24) 随机存取文件中的记录必须等长。( F)25) seek方法必须以文件头为基准进行查找。(T )一、简述题(每题6分,共36分)1.简述图形界面的构成成分以及它们各自的作用。答:Java中图形界面的构成成分可以大致分类:容器、控制组件、用户自定义成分。容器用来包容和组织其他界面成分;控制组件是完成与用户交互的最小单元;用户自定义成分通常只有显示功能,不能接收用户的输入。2.结构化程序设计有那三种基本流程?它们分别对应Java中的那些语句?答:结构化程序设计有顺序、分支、循环三种基本流程。Java中的分支语句包括if语句、switch语句、;循环语句包括while语句、do-while语句、for语句;其他如对象、变量定义语句、赋值语句、方法调用语句等都是顺序语句。3.当try块发出一个异常时,在模块中构造的动态对象会出现什么情况?当一个catch处理程序发出一个异常时,会出现什么情况?答:对象会被标记为垃圾进行收集,在对象被垃圾收集之前会调用各个对象的finalizer。与一个try块相联系的catch处理程序(如果存在的话)会处理这个异常,该try块(如果存在)包含了引起异常的catch处理程序。4.Java有那些基本数据?类型写出int型所能表达的最大、最小数据。答:Java的基本数据类型包括:布尔型、字节型、字符型、短整型、整型、长整型、浮点型、双精度型。Int型所能表达的最大数据为2147483647,最小数据为-2147482648。5.什么是异常?Java为什么要引入异常处理机制?系统定义的异常类在异常处理机制中有什么作用?答:异常是Java程序在运行过程中产生的会终止正常运行的意外或错误。Java的异常处理机制可以帮助编程者及时、有效地处理程序可能产生的运行时错误。系统定义的异常类Exception是所有异常类的祖先,Java系统还另外定义了一些常见的运行异常,如输入输出异常等。6.简述超类和子类的关系。答:子类的每个对象也是其超类的对象,反之则不然,超类的对象不一定是它的子类对象。二、问答题(每题5分,共30分)1.线程有那5个基本状态?它们之间如何转化?简述线程的生命周期。答:线程有“新建”、“就绪”、“阻塞”、“运行”、“死亡”5个基本状态。线程对象被创建时进入“新建”状态;程序执行语句启动这个线程后,它进入线程队列排列等待CPU时间片,称为“就绪”状态;等CPU时间和其他资源齐备时就进入“运行”状态;线程运行完毕或者被强制终止则进入“死亡”状态。上述线程各状态之间的转换就构成了线程的基本生命周期。2.简述程序、进程和线程之间的关系?什么是多线程程序?答:程序是一段静态的代码,是软件执行的蓝本。进程是程序的一次动态执行过程。线程是比进程更小的程序执行单位,一个进程可以启动多个线程同时运行,不同线程之间可以共享相同的内存区域和数据。多线程程序是运行时间后嗣可能出现在一个进程之内的、有一个以上线程同时运行的情况的程序。3.为什么异常处理技术不应用于常规的程序控制?答:异常处理用来处理不经常发生,但通常会导致程序终止的情况,所以不要求编译器编写者实现异常处理;传统的控制结构产生的控制流一般更清晰,效果也更高。在发生异常时堆栈是松散的,并且在异常发生前分配的资源也许不会被释放,所以会出现一些问题。“额外的”异常会妨碍真正的错误类型异常。程序员更难以跟踪大量的异常情况。4.向量与数组有何不同?它们分别适用于什么场合?答:向量是类似于数组的顺序存储的数据结构,不同之处是向量中的每个元素都是对象,向量中还封装了一些常用的数据处理功能,因此向量是允许不同类型元素共存的变长数组。下面的情况下适用向量: 要处理的对象数目不定;序列中的元素都是对象,或可以表率为对象。 要将不同类的对象组合成一个数据序列。 要做频繁的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论