Java考试题+答案_第1页
Java考试题+答案_第2页
Java考试题+答案_第3页
Java考试题+答案_第4页
Java考试题+答案_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、选择题(每题 3 分,共 45 分)1、下列程序编译或运行的结果是。 ( ) D public static void main(String args)int a = 10;int b,c;if(a50)b=9;c = b + a;System.out.println(c);A. 10 B. 19C. 9 D. 编译错误2、下列语句片段中, four 的值为 ( ) D int three = 3;char one = 1 ;char four = (char)(three+one);A. 3B. 1C. 31 D. 4 3、下列代码的运行结果是 ( ) D public static vo

2、id main(String args) int a = 7;System.out.println(a%3);A2.0 B 2 C 1.0 D 14、以下程序的输出结果为 ( ) 。 Dpublic static void main(String args) int x = 1, y = 1, z =1;if(x-=1&y-=1|z-=1), z= ” +z);System.out.println(“ x=” +x+ ” , y= ” +y+A. x=0, y=1, z=1B. x=0, y=2, z=2C. x=0, y=2, z=1D. x=0, y=0, z=15、下列代码段编译和运行的

3、结果是()public static void main(String args) String str = “ null ” ;if(str=null)System.out.println(else if(str.length()=0)System.out.println( else System.out.println( A. nullB. zeronull ” );a”、zero ” );a”、some” );C. someD. 编译错误6、下列代码的运行结果是(): Dpublic class Animalpublic String noise()丄a”return “ peep” ;

4、public static void main(String args)Animal animal = new Dog();Cat cat = (Cat)animal; System.out.println(cat.noise();class Dog extends Animalpublic String noise() return “ bark ”;class Cat extends Animalpublic String noise()丄a”return “ meow” ;A. peepB. bark C. meow D. 编译错误 E. 抛出运行时异常7、关于下列代码说法正确的是 (

5、) D public class Foopublic int add(int a,int b)return a+b;public static void main(String args)Foo foo = null;System.out.println(foo.add(10,20);D. 运 行 时 抛 出A. 编译错误 B. 正常运行,但无结果输出 C.30NullPointerException8、程序的执行结果是 ( ) B public class Testint x;public static void main(String args)Test t = new Test();t.

6、x = 5;change(t);System.out.println(t.x);public static void change(Test t)t.x = 3;A. 5 B. 3 C. 0 D. 49、关于下列代码书法正确的是 ( ) B public class Apublic void doit()public String doit()丄a ”return“ a” ;public double doit(int x)return 1.0;A. 无编译错误B. 代码 public String doit() 行,出现编译错误C. 代码 public double doit(int x)

7、行,出现编译错误D. 代码 return “ a” ; 行处 出现编译错误10、下列代码的运行结果是() DString test =“This is a test” ;String tokens = test.split(“ s ” );System.out.println(tokens.length);A. 0 B. 1C. 3D. 411、请看下列代码() A1 /some code here2 try3 /some code here4 catch(SomeException se)5 /some code here6 finally7/some code here8下面那种情况不能使

8、第 7 行的代码执行:A. 第 1 行抛出异常B. 第 3 行抛出异常C. 第 5 行抛出异常D. 第 3 行代码成功执行E. 第 5 行代码成功执行F. 不管如何第 7 行都会运行出现的顺序应为: ( )12、 Java 中单一文件里的关键字 class import packageA. class package importB. class import packageC. package import classD. import package class13、给出以下代码,请问该程序的运行结果是什么?Dclass Example public static void main(St

9、ring args)String s = new String( Computer );if( s = Computer )System.out.println( Equal A );if( s.equals( Computer ) )System.out.println( Equal B );A、 代码编译失败B、打印输出空白行C、 打印输出: Equal A;D、 打印输出: Equal BE、 打印输出: Equal A 和 Equal B14、 Java 语言中 , 通常把可能发生异常的方法调用语句放到 、 块中,分别用来捕获和处理异常。 ( ) CA. try,finally;B.

10、catch,try;C. try,catchD. finally,try15、下列哪个语句可以获取文件“ file.txt ”的父目录名称?( )DA.String name=File.getPare ntName(“file.txt ”) ;B.String name=(new File(“file.txt”).getParent() ;C.String name=(new File(“file.txt”).getParentName();D.String name=(new File(“file.txt”).getParentFile();填空题(每空2分,共20分)1完成代码计算10的阶

11、乘并输出,把下面代码补全: int result = 1;for(int i = 2; i = 10; i+)System.out.pri ntln( “ result= ” + result); 答案:result *= i 或 result = result * i2、 在Java的类中需要将一个成员变量设置成子类可访问并且包内可访问,则使用访问修饰符来访问。答案:protected3、 Java中所有类都是类_ 的子类答案:java.lang.Object4、 System.out prinln(4/3)的输出结果为 , System.out prinln(4%3)的输出结果为 .答案:

12、1,15、 Java语言中我们可以继承 类或实现 接口实现多线程。答案:ThreadRu nn able中的任何一点6、方法重载的条件中,参数只要满足 即可。答案:顺序不同、个数不同、类型不同简答题(共17分)1、请您简述Java语言中的面向对象的特征都有哪些?并逐个阐述。 (8分) 答案1. 抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。一是过程抽象,二是数据抽象。过程抽象是指任何一个明确定义功能的操作都可被使用者看作 单个的实体看待,尽管这个操作实际上可能由一系列更低级的操作来

13、完成。数据抽象定义了数据类型和施加于该类型对象上的操作,并限定了对象的值只能通过使用这些操作修改和观察。2. 继承:继承是一种联结类的层次模型, 并且允许和鼓励类的重用, 它提供了一种明确表述共性 的方法。 对象的一个新类可以从现有的类中派生, 这个过程称为类继承。 新类继承了原始类 的特性,新类称为原始类的派生类(子类) ,而原始类称为新类的基类(父类) 。派生类可以 从它的基类那里继承方法和实例变量, 并且类可以修改或增加新的方法使之更适合特殊的需 要。3. 封装:封装是面向对象的特征之一, 是对象和类概念的主要特性。 封装是把过程和数据包围起 来,对数据的访问只能通过已定义的界面。 面向

14、对象计算始于这个基本概念, 即现实世界可 以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 一旦定义了一个对象的特性, 则有必要决定这些特性的可见性, 即哪些特性对外部世界是可 见的, 哪些特性用于表示内部状态。 在这个阶段定义对象的接口。 通常,应禁止直接访问一 个对象的实际表示, 而应通过操作接口访问对象, 这称为信息隐藏。事实上,信息隐藏是用 户对封装性的认识, 封装则为信息隐藏提供支持。 封装保证了模块具有较好的独立性, 使得 程序维护修改较为容易。 对应用程序的修改仅限于类的内部, 因而可以将应用程序修改带来 的影响减少到最低限度。4. 多态性:多态性

15、是指允许不同类的对象对同一消息作出响应。 比如同样的加法, 把两个时间加在 一起和把两个整数加在一起肯定完全不同。又比如,同样的选择编辑- 粘贴操作,在字处理程序和绘图程序中有不同的效果。 多态性包括参数化多态性和包含多态性。 多态性语言具有 灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。2、请说出List , Set和Map三个接口存储元素时各有什么特点?(9分)答案:List 与 Set 具有相似性,它们都是单列元素的集合,它们有一个共同的父接口,叫做 Collection 。Set 里面不允许有重复的元素,所谓重复,即不能有两个相等(不仅仅是相同)的对象,即假设

16、Set集合中有了一个 A对象,现在我要向 Set集合再存入一个 B对象,但B对象与A 对象 equals 相等,则 B 对象存储不进去。 Set 集合的 add 方法有一个 boolean 的返回值, 当集合中没有某个元素,此时 add 方法可成功加入该元素时,则返回 true ,当集合含有与 某个元素 equals 相等的元素时,此时 add 方法无法加入该元素,返回结果为 false 。List表示有先后顺序的集合,当我们多次调用add(Obj e)方法时,每次加入的对象就像火车 站买票有排队顺序一样,按先来后到的顺序排序。有时候,也可以插队,即调用add(intindex,Obj e)

17、方法,就可以指定当前对象在集合中的存放位置。一个对象可以被反复存储进 List 中,每调用一次 add 方法,这个对象就被插入进集合中一 次,其实, 并不是把这个对象本身存储进了集合中, 而是在集合中用一个索引变量指向这个 对象,当这个对象被 add 多次时,即相当于集合中有多个索引指向了这个对象。Map 与 List 和 Set 不同,它是双列的集合,其中有put 方法,定义如下: put(objkey,objvalue) ,每次存储时,要存储一对 key/value ,不能存储重复的 key, 这个重复的规则也是按 equals 比较相等。取则可以根据 key 获得相应的 value ,即

18、 get(Object key) 返回值为 key 所对应的 value 。编程题(共 18 分)1、请阅读下列程序,并写出其运行结果: (6 分) public class Test public static void main(String args) Son s = new Son();class ParentSystem.out.println(“ A” ); static System.out.println(“ B” );public Parent()System.out.println(“ C” );class Son extends ParentSystem.out.prin

19、tln(“ D” );staticSystem.out.println(“ E” );public Son()System.out.println(“ F” );答案:BEACDF6 分)2、写出一种实现单例的方式?(懒汉式,饿汉式任选一种)答案:懒汉式:1. public class Singleton 2. privatestaticSingletoninstance;3. privateSingleton ()4.4. publicstaticSingletongetlnstance() 5. if (instance= null )6. instance = new Singleton();7. 8. returninstance;9. 10. 饿

温馨提示

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

评论

0/150

提交评论