javachapter3练习

上传人:xiao****1972 文档编号:84822133 上传时间:2019-03-05 格式:DOC 页数:32 大小:787KB
返回 下载 相关 举报
javachapter3练习_第1页
第1页 / 共32页
javachapter3练习_第2页
第2页 / 共32页
javachapter3练习_第3页
第3页 / 共32页
javachapter3练习_第4页
第4页 / 共32页
javachapter3练习_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《javachapter3练习》由会员分享,可在线阅读,更多相关《javachapter3练习(32页珍藏版)》请在金锄头文库上搜索。

1、第 3 章 面向对象程序设计一、 判断题1. ()下面程序输出数字0。2. ()Java语言为所有的Java程序自动导入包“java.lang”,因此Java程序可以直接用“java.lang”中的类和接口。位于类继承关系层次结构树的根部的类Object就是在包“java.lang”中的一个类。3. ()有时候为了避免引起混淆,构造方法的方法名可以不与所属类名同名。4. ()构造方法一般不允许有任何返回值,因此需要在返回类型处标注为void。5. ()任何类都必须显示地定义该类的构造方法,以便对类的成员进行各种初始化操作。6. ()运行下面程序将在控制台窗口中输出a。7. ()下面的程序将输出

2、“Creating Rock 2”。8. ()Java语言对内存的释放是采用垃圾自动回收机制。Java虚拟机自动判断并收集“垃圾”,但一般不会立即释放它们的存储空间。9. ()Java系统提供了方法“System.gc()”来强制立即回收“垃圾”,即当调用该方法时,系统会立即回收“垃圾”。10. ()程序可以借助于finalize方法来精确记录在程序执行过程中内存资源的释放情况。11. ()如果在定义一个类的时候没有用到关键字extends,则这个类没有直接父类。12. ()Java语言规定:任何一类的构造方法必须调用其父类的构造方法(包括隐式调用),并且调用父类构造方法的语句必须是子类构造方

3、法的第一条语句。13. ()在同一类中,不允许存在具有相同方法名和相同参数类型列表的方法,即使该方法的返回类型不相同。14. ()如果一个类不是内部类,则它的访问属性不能是private或者protected。15. ()抽象方法不能含有方法体,并且必须在抽象类中。16. ()抽象类是不能实例化的。抽象类的实例化,应当通过其不具有抽象属性的子类来创建。17. ()下面的程序输出整数3。18. ()设在一个java包cn.edu.tsinghua.kit中含源程序文件J_Data.java,其内容如下:在另一个包中含有源程序Exer3_1_18.java,其内容如下:假设类路径设置及源程序文件所

4、在的路径都是正确的,则上面的程序可以正常进行编译与运行,最终可以输出3。二、 填空题1. 面向对象的计算机语言一般应有3个基本特征,分别是_、_和_。2. 在下面的源代码中,类Exer3_2_2的域是_,构造方法是_,当该类的实例对象在被释放之前可能被系统自动调用的方法是_。3. 在下面程序编译后,按“Java Exer3_2_3 1 2 3”方式运行的结果是:_。4. 运行下面程序会输出_。5. 运行下面程序,将会输出_。6. 语句“J_Example a =new J_Example()”定义了变量a,想释放变量a所指向的实例对象的内存空间,请写出相应的一条或多条语句:_。7. 在源程序的

5、下划线处填上相应的语句,完成该程序,并判断该程序的最终输出结果是_。8. 下面程序的输出结果是_。9. 下面程序的输出是_。10. 下面程序的输出结果是_。11. 下面程序的输出结果是_。三、 选择题1. 关于下面代码,结论正确的是()。(A)类J_Subclasss的构造方法具有public属性;(B)类J_Subclasss的构造方法不含参数;(C)类J_Subclasss的构造方法包括调用this();(D)类J_Subclasss的构造方法包括调用super();2. 在下列的类定义中,可以通过“new J_Class()”生成J_Class实例的是()。(A)(B)(C)(D)3.

6、关于下面程序,结论正确的是()。(A)程序可以通过编译并正常运行,结果输出“21”(B)程序可以通过编译并正常运行,结果输出“221”(C)程序无法通过编译(D)程序可以通过编译,但无法正常运行4. 关于下面的程序,结论正确的是()。(A)程序可以通过编译并正常运行,结果输出“5”(B)程序可以通过编译并正常运行,结果输出“23”(C)程序无法通过编译(D)程序可以通过编译,但无法正常运行5. 关于下面的程序,结论正确的是()。(A)程序可以通过编译并正常运行,结果输出“123”(B)程序可以通过编译并正常运行,结果输出“13”(C)程序可以通过编译并正常运行,结果输出“213”(D)程序无法

7、通过编译6. 关于下面程序代码,结论正确的是()。(A)程序无法通过编译,因为Exer3_3_6没有定义无参数的构造方法(B)程序无法通过编译,因为J_SubClass没有定义构造方法(C)程序无法通过编译,因为没有实现J_SubClass(int i)构造方法(D)程序可以通过编译7. 下面程序的输出是_。(A)3null(B)3constructor(C)2constructor(4)2null8. 下面程序的输出是_。(A)3null(B)3constructor(C)2constructor(D)2null9. 关于java的垃圾回收机制,下面结论正确的是()。(A)程序可以任意指定释

8、放内存的时间(B)正确的程序写法是不能依赖于垃圾回收的时间或顺序(C)程序可以明确地标识某个局部变量的引用不再被使用(D)程序可以显式地立即释放对象所占有的内存10. 在下面程序代码中,为使实例引用a能访问(调用)到类J_Base的成员方法mb_method(),划线处应填入()。(A)a.mb_method();(B)a.super.mb_method();(C)a.super.super.mb_method();(D)以上都不对11. 关于下面的程序代码,结论正确的是()。(A)运行上面的程序,结果输出“data =3”(B)上面程序含有编译错误(C)在运行上面程序时,第11行的语句会抛出

9、一个异常(D)在运行上面程序时,第12行的语句会抛出一个异常12. 关于下面程序代码(在同一个文件中),结论正确的是()。(A)无法通过编译,因为语句有错误(B)可以通过编译,但在运行时将报错(C)可以通过编译,也可以正常运行(D)无法通过编译,因为在同一个文件中类的个数太多13. 关于下面的程序代码,结论正确的是()。(A)无法通过编译,因为语句中有错误(B)可以通过编译,但在运行时将出错(C)可以通过编译,也可以正常运行(D)无法通过编译,因为同一个文件中类的个数太多14. 为使下面程序输出“Sub”,应在下划线处填入的语句是()。(A)System.out.println(app.mb_

10、getString();(B)System.out.println(J_Base)app.mb_getString();(C)System.out.println(J_SubClass)app.mb_getString();(D)System.out.println(J_SubClass)app).mb_getString();15. 为使程序输出“Sub”,应在下划线位置填的语句是()。(A)System.out.println(app.mb_getString();(B)System.out.println(J_Base)app.mb_getString();(C)System.out.p

11、rintln(J_SubClass)app.mb_getString();(D)System.out.println(J_SubClass)app).mb_getString();16. 为使程序输出“Sub”,应在下划线填入的语句是()。(A)System.out.println(app.mb_getString();(B)System.out.println(J_Base)app.mb_getString();(C)System.out.println(J_SubClass)app.mb_getString();(D)System.out.println(J_SubClass)app).m

12、b_getString();(E)以上选项都不正确17. 下面程序的输出结果是_。(A)22(B)55(C)25(D)5218. 如果将其语法定义填入下列代码第9行,会使以下代码编译错误的是()。(A)public float getNum() return 4.0f;(B)public void getNum() (C)public void getNum(double d) (D)public double getNum(float d) return 4.0d;19. 已知字母a和字母b所对应的数值分别是97和98,关于下面程序代码,结论正确的是()。(A)程序可以通过编译并正常运行,结

13、果输出“Name: a; Age:98”(B)程序可以通过编译并正常运行,结果输出“Name: b; Age:97”(C)程序可以通过编译并正常运行,结果输出“Name: b; Age:98”(D)程序可以通过编译并正常运行,结果输出“Name: a; Age:97”20. 关于下面程序代码,结论正确的是()。(A)程序可以通过编译并正常运行,结果输出“Index=98; Age=0”(B)程序可以通过编译并正常运行,结果输出“Index=0; Age=98”(C)程序可以通过编译并正常运行,结果输出“Index=0; Age=0”(D)程序可以通过编译并正常运行,结果输出“Index=98; Age=98”(E)程序无法通过编译21. 关于下面程序代码,结论正确的是()。(A)程序可以通过编译并正常运行,结果输出“Index=98; Age=0”(B)程序可以通过编译并正常运行,结果输出“Index=0; Age=98”(C)程序可以通过编译并正常运行,结果输出“Index=0; Age=0”(D)程序可以通过编译并正常运行,结果输出“Index=98; Age=98”(E)程

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号