国开作业面向对象程序设计本本章自测07参考含答案文档格式.docx
《国开作业面向对象程序设计本本章自测07参考含答案文档格式.docx》由会员分享,可在线阅读,更多相关《国开作业面向对象程序设计本本章自测07参考含答案文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
子类继承了超类的方法和状态,在子类中可以进行的是()。
增添方法
更换超类方法
减少超类方法
减少超类变量
下列概念中不包括任何实现,不需要考虑为其分配内存,与存储空间没有任何关系的是()。
类
接口
对象
抽象类
下列Java源程序结构中前3种语句的次序,正确的是()。
publicclass,import,package
import,package,publicclass
package,import,publicclass
import必为首,其他不限
阅读下列代码段:
abstractclassPerson{
publicPerson(Stringn){
name=n;
}
PublicStringgetDescription();
publicStringgetName(){
returnname;
privateStringname;
在下划线处应填入的修饰符是()。
protected
final
abstract
static
下面定义的类,错误的是()。
staticclassAppleimplementsI1,I2
classApple{}
publicclassAppleextendsFruit{}
classAppleextendsFruit{}
Java语言中的每个类都隐含着继承一个父类,这个父类是()。
java
class
Java.lang.Object
father
超类具有三种变量:
①私有(private)变量、②公有(public)变量、③保护(protected)变量。
子类从超类继承,则这3个变量中,子类可以直接访问的有():
①②③
③
②③
①
关于包的说法,错误的是()
在Java语言中,声明包语句只允许是一个Java程序文件的第一条语句。
一个包可以包含若干个类文件,还可包含若干个包。
对于Java文件,可以在文件的开头位置用package语句指定所属的包。
使用其他包中所提供的类时用import语句
一个包只能包含若干个类字节码文件,不能够再包含其他包。
关于继承,下列说法错误的是()
根据已有类继承定义出的新类称为已有类的派生类(子类),已有类称为超类(父类)。
Java不支持类的多重继承,只支持类的单继承。
派生类可以直接访问从父类中继承下来的所有成员变量及方法。
下列说法正确的是()
一个父类的对象可以直接赋值给下层子类的对象。
任何一个派生类的引用变量(或对象)都可以被当成一个父类的引用变量(或对象)。
在Java语言中,既可以根据一个类创建对象,也可以根据一个接口创建对象。
下列说法错误的是()
抽象类要包含一些抽象方法,这种抽象方法只有方法的声明,而没有方法的实现。
在一个抽象类中,也可以包含成员变量和构造方法。
在Java语言中,可以利用抽象类去直接生成一个对象,也可以利用接口去直接生成对象。
接口中的所有方法都是抽象的,每个方法都只有方法声明,而没有方法体。
在Java语言中,使用包提供了包一级的封装及存取权限。
一个类可以实现一个或多个接口,所使用的子句关键字为implements。
在Java语言中,一个类不能被定义在另一个类之中,类与类之间没有包含关系。
接口中的所有成员方法都默认具有public和abstract修饰。
Date类和Calendar类都包含在java.util包中,但是Date类可以操作日期时间,而Calendar类用于绘制日历图,不能操作时间。
多维数组可以看成数组的数组。
数组是由同类型的数据元素构成的一种数据结构。
数据元素可以是基本数据类型,也可以是对象。
每个基本数据类型都有一个对应的包裹类。
classRectangle{
privateinta,b;
publicRectangle(intaa,intbb){
a=aa;
b=bb;
publicintarea(){
returna*b;
publicintgirth(){
return2*(a+b);
publicclassXXK3extendsRectangle{
privateintc;
publicXXK3(intaa,intbb,intcc){
super(aa,bb);
c=cc;
publicintvolume(){
returnarea()*c;
publicintarrisLength(){
return2*girth()+4*c;
publicstaticvoidmain(String[]args){
XXK3x=newXXK3(2,3,4);
inty1=x.volume();
inty2=x.arrisLength();
System.out.println(y1+"
"
+y2);
程序运行的结果是36
24,36
XXK3x=newXXK3(1,3,5);
30,96
40,30
15,96
15,36
abstractclassShape{
inta,b;
publicShape(intaa,intbb){
abstractpublicdoublearea();
classRectangleextendsShape{
publicdoublearea(){
classTriangleextendsShape{
publicTriangle(intaa,intbb){
returna*b/2;
publicclassXXK3{
Shapex,y;
x=newRectangle(5,8);
y=newTriangle(5,8);
System.out.println(x.area()+"
+y.area());
程序运行的结果是36.0
30.0,36.0
40.0,20.0
x=newRectangle(10,20);
y=newTriangle(10,15);
程序运行的结果是75.0
200.0,36.0
200.0,75.0
interfaceShape{
doublearea();
doublegirth();
classRectangleimplementsShape{
p