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

下载本文档

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

文档简介

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

2、c void main(String args) int a = 7; System.out.println(a%3);A 2.0B2C1.0D14、以下程序的输出结果为 ( public static void main(String args) int x = 1, y = 1, z =1; if(x-=1&&y-=1|z-=1) System.out.println()。a ”x=”+x+, y=+y+ ” , z= ” +z);A. x=0, y=1, z=1B. x=0, y=2, z=2C. x=0, y=2, z=1D. x=0, y=0, z=1).5、下列代码

3、段编译和运行的结果是( public static void main(String args) String str =“ null ”;if(str=null)System.out.println(“ null ”else if(str.length()=0)System.out.println(a”“ zero ” else System.out.println(a”“some”B. zeroC. some);););):A. nullD. 编译错误6、下列代码的运行结果是(public class Animalpublic String noise()Xa”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()I“”return “ meow”;A. peep B. bark C. meow D. 编译错误E. 抛出运行时异常7、关于下列代码说法正确的是 (

5、 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);A. 编译错误 B. 正常运行,但无结果输出 NullPointerExceptionC.30D. 运 行 时 抛 出8、程序的执行结果是 ( )public class Testint x;public static void main(String args)Test t = new Test();t.x =

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

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

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

9、ng s = new String( "Computer" ) ; if( s = "Computer" )System.out.println( "Equal A" ) ;if( s.equals( "Computer" ) ) System.out.println( "Equal B" ) ;A、B、C、D、E、代码编译失败 打印输出空白行 打印输出: 打印输出: 打印输出:Equal A;Equal BEqual A 和 Equal B, 通常把可能发生异常的方法调用语句放到 块中,分别用

10、来捕获和处理异常。 ( ) A. try,finally; B. catch,try; C. try,catch D. finally,try14 、 Java 语言中15 、下列哪个语句可以获取文件“ file.txt 的父”目录名称?(DA. Stri ng n ame = File.get Paren tName(“ file.txt;”)B. String name = (new File( “file.txt” ).getParent()C. String name=(new File(“file.txt” ).getParentN;me()D. String name=(new F

11、ile(“file.txt” ).getParentFile()填空题(每空2分,共20 分)1、完成代码计算10的阶乘并输出,把下面代码补全: int result = 1;for(i nt i = 2; i <= 10; i+) “ ”System.out .pnntln( “result= ” + result); 答案:result *= i 或 result = result * i2、在Java的类中需要将一个成员变量设置成子类可访问并且包内可访问,则使用访问修饰符来访问。答案:Protected3、Java中所有类都是类答案:java.Iang.Object的子类4、Sys

12、tem.out prinin(4/3)的输出结果为, System.out prinin(4%3)的输出结果为.答案:1,15、Java语言中我们可以继承 程。答案:Thread Runnable类或实现接口实现多线6、方法重载的条件中,参数只要满足 何一点即可。答案:顺序不同、个数不同、类型不同中的任简答题(共17分)1、请您简述Java语言中的面向对象的特征都有哪些?并逐个阐述。(8 分)答案1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分, 暂时不用部分细节。一是过程抽象,二是数据抽象。过程抽

13、象是指任何一个明确定义功能的操作都可被使用者看作单个的实体看待, 尽管这个操作实际上可能由 一系列更低级的操作来完成。 数据抽象定义了数据类型和施加于该类型对象上的 操作,并限定了对象的值只能通过使用这些操作修改和观察。2. 继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明 确表述共性的方法。 对象的一个新类可以从现有的类中派生, 这个过程称为类继 承。新类继承了原始类的特性,新类称为原始类的派生类(子类) ,而原始类称 为新类的基类(父类) 。派生类可以从它的基类那里继承方法和实例变量,并且 类可以修改或增加新的方法使之更适合特殊的需要。而应3. 封装: 封装是面向

14、对象的特征之一, 是对象和类概念的主要特性。 封装是把过程和 数据包围起来, 对数据的访问只能通过已定义的界面。 面向对象计算始于这个基 本概念, 即现实世界可以被描绘成一系列完全自治、 封装的对象, 这些对象通过 一个受保护的接口访问其他对象。 一旦定义了一个对象的特性, 则有必要决定这 些特性的可见性,即哪些特性对外部世界是可见的, 哪些特性用于表示内部状态。 在这个阶段定义对象的接口。 通常, 应禁止直接访问一个对象的实际表示, 通过操作接口访问对象, 这称为信息隐藏。 事实上, 信息隐藏是用户对封装性的 认识,封装则为信息隐藏提供支持。 封装保证了模块具有较好的独立性, 使得程 序维护

15、修改较为容易。 对应用程序的修改仅限于类的内部, 因而可以将应用程序 修改带来的影响减少到最低限度。4. 多态性:多态性是指允许不同类的对象对同一消息作出响应。 比如同样的加法, 把两 个时间加在一起和把两个整数加在一起肯定完全不同。 又比如,同样的选择编辑 -粘贴操作,在字处理程序和绘图程序中有不同的效果。多态性包括参数化多态 性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很 好的解决了应用程序函数同名问题。2、请说出 List,Set 和 Map 三个接口存储元素时各有什么特点?( 9 分) 答案:List 与 Set 具有相似性,它们都是单列元素的集合,它们有一个共

16、同的父接口, 叫做 Collection 。Set 里面不允许有重复的元素,所谓重复,即不能有两个相等(不仅仅是相同) 的对象,即假设Set集合中有了一个A对象,现在我要向Set集合再存入一个B 对象,但 B 对象与 A 对象 equals 相等,则 B 对象存储不进去。 Set 集合的 add 方法有一个 boolean 的返回值,当集合中没有某个元素,此时 add 方法可成功 加入该元素时,则返回true,当集合含有与某个元素equals相等的元素时,此 时 add 方法无法加入该元素,返回结果为 false。List 表示有先后顺序的集合 ,当我们多次调用 add(Obj e) 方法时,

17、每次加入的对象 就像火车站买票有排队顺序一样, 按先来后到的顺序排序。 有时候,也可以插队, 即调用 add(int index,Obj e) 方法,就可以指定当前对象在集合中的存放位置。 一个对象可以被反复存储进 List 中,每调用一次 add 方法,这个对象就被插入 进集合中一次, 其实, 并不是把这个对象本身存储进了集合中, 而是在集合中用一个索引变量指向这个对象, 当这个对象被 add 多次时,即相当于集合中有多个 索引指向了这个对象。Map 与 List 和 Set 不同,它是双列的集合, 其中有 put 方法,定义如下: put(obj key,objvalue) ,每次存储时,

18、要存储一对 key/value ,不能存储重复的 key , 这个重复的规则也是按 equals 比较相等。取则可以根据 key 获得相应的 value ,即 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( static System.out.println(public Parent()

19、System.out.println(class Son extends ParentSystem.out.println( static System.out.println(public Son()System.out.println(A”B”C”D”E”F”););););););答案:BEA C D F2、写出一种实现单例的方式?(懒汉式,饿汉式任选一种)(6分)public class Singleton private static Singleton instanee;private Singleton ()答案: 懒汉式:1.2.3.p ublic static Sin glet on get In sta nce() if (instanee = nuII) in sta nee = new Si ngleto n();return instanee;4.5.6.7.8.9.10.11. 饿汉式:1.2.3.4.5.6

温馨提示

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

评论

0/150

提交评论