第 3 章 面向对象程序设计
一、判断题
1. ( )下面程序输出数字0。
2. ( )Java语言为所有的Java程序自动导入包“java.lang”,因此Java程序可以直
接用“java.lang”中的类和接口。位于类继承关系层次结构树的根部的类Object就是在包“java.lang”中的一个类。
3. ( )有时候为了避免引起混淆,构造方法的方法名可以不与所属类名同名。 4. ( )构造方法一般不允许有任何返回值,因此需要在返回类型处标注为void。 5. ( )任何类都必须显示地定义该类的构造方法,以便对类的成员进行各种初始化操作。
6. ( )运行下面程序将在控制台窗口中输出a。
7. ( )下面的程序将输出“Creating Rock 2”。
8. ( )Java语言对内存的释放是采用垃圾自动回收机制。Java虚拟机自动判断并收集“垃圾”,但一般不会立即释放它们的存储空间。
9. ( )Java系统提供了方法“用该方法时,系统会立即回收“垃圾”。
10. ( )程序可以借助于finalize方法来精确记录在程序执行过程中内存资源的释放情况。
11. ( )如果在定义一个类的时候没有用到关键字extends,则这个类没有直接父类。 12. ( )Java语言规定:任何一类的构造方法必须调用其父类的构造方法(包括隐式调用),并且调用父类构造方法的语句必须是子类构造方法的第一条语句。
13. ( )在同一类中,不允许存在具有相同方法名和相同参数类型列表的方法,即使该方法的返回类型不相同。
14. ( )如果一个类不是内部类,则它的访问属性不能是private或者protected。 15. ( )抽象方法不能含有方法体,并且必须在抽象类中。
16. ( )抽象类是不能实例化的。抽象类的实例化,应当通过其不具有抽象属性的子类来创建。
17. ( )下面的程序输出整数3。
”来强制立即回收“垃圾”,即当调
18. ( )设在一个java包cn.edu.tsinghua.kit中含源程序文件J_Data.java,其内容如
下:
在另一个包中含有源程序J_Test.java,其内容如下:
假设类路径设置及源程序文件所在的路径都是正确的,则上面的程序可以正常进行编译与运行,最终可以输出3。
二、填空题
1. 面向对象的计算机语言一般应有3个基本特征,分别是_________________、___________________和___________________。
2. 在下面的源代码中,类J_Example的域是__________,构造方法是_____________,当该类的实例对象在被释放之前可能被系统自动调用的方法是___________。
3. 在下面程序编译后,按“
”方式运行的结果是:__________。
4. 运行下面程序会输出______________。
5. 运行下面程序,将会输出__________________。
6. 语句“
”定义了变量a,想释放变量a所指
向的实例对象的内存空间,请写出相应的一条或多条语句:___________________。
7. 在源程序的下划线处填上相应的语句,完成该程序,并判断该程序的最终输出结果是__________________。
8. 下面程序的输出结果是________________。
9. 下面程序的输出是________________。
10. 下面程序的输出结果是__________________________。