Java面向对象(二)习题Java面向对象(二)习题.doc
文本预览下载声明
1、 Java中用于定义接口的关键字是( )
A、import B、package
C、class D、interface
2、 以下关于abstract的说法,正确的是( )
A、abstract只能修饰类
B、abstract只能修饰方法
C、abstract类中必须有abstract方法
D、abstarct方法所在的类必须用abstract修饰
3、 下列哪种说法是正确的( )
A、私有方法不能被子类覆盖。
B、子类可以覆盖超类中的任何方法。
C、覆盖方法可以声明自己抛出的异常多于那个被覆盖的方法。
D、覆盖方法中的参数清单必须是被覆盖方法参数清单的子集。
4、关于类继承的说法,正确的是( )
A、Java 类允许多重继承
B、Java接口允许多继承
C、接口和类都允许多继承
D、接口和类都不允许多继承
5、 关于抽象类,正确的是______。
A. 抽象类中不可以有非抽象方法
B. 某个非抽象类的父类是抽象类,则这个子类必须重载父类的所有抽象方法
C. 不能用抽象类去创建对象
D. 接口和抽象类是同一个概念
6、 下列哪个类是由编译器自动生成对象的特殊类,是用于类操作?( )
A、Class类
B、Thread类
C、System类
D、Object类
7、 下面关于继承的哪些叙述是正确的。 ( )
A、在java中只允许单一继承。
B、在java中一个类只能实现一个接口。
C、在java中一个类不能同时继承一个类和实现一个接口。
D、java的单一继承使代码更可靠。
8、 抽象类A和抽象类B的定义如下:
abstract class ex4_5_10_A {
abstract int getinfo();
}
public class ex4_5_10 extends ex4_5_10_A {
private int a = 0;
public int getinfo() {
return a;
}
public static void main(String args[]) {
ex4_5_10 b = new ex4_5_10();
System.out.println(b.getinfo());
}
}
关于上述代码说明正确的是( )。
A. 输出结果为0 B.通过编译但没有输出任何结果
C. 第5行不能通过编译 D. 程序第2行不能通过编译
9、 下面程序的运行结果是______
class ex4_5_11_A {
protected static int count = 0;
public ex4_5_11_A() {
count++;
}
}
class ex4_5_11_B extends ex4_5_11_A {
public ex4_5_11_B() {
count++;
}
}
class ex4_5_11 {
public static void main(String args[]) {
ex4_5_11_B x = new ex4_5_11_B();
System.out.println(count= + x.count);
}
}
A. count=1 B. count=2
C. count=3 D. count=4
9、设有下面两个类的定义:
class Person
{ long id; // 身份证号
String name; // 姓名
}
class Student extends Person
{ int score; // 入学总分
int getScore(){
return score;
}
}
问:类Person和类Student的关系是( )
A、包含关系 B、继承关系
C、关联关系 D、无关系,上述类定义有语法错误
10.下面的程序段执行后输出的结果是( )
StringBuffer buf=new StringBuffer(China2008);
buf.insert(5,@);
System.out.println(buf.toString());
A、China2008@
B、@China2008
C、China@2008
D、China#2008
填空题:
1、对于接口的实现,不可以构造一个接口对象,但可以声明一个接口______。
1、 在Java语言中所有的类都是直接或间接地继承______类而得到的。
2、在Java中一个父类可以有______个子类,一个类只能有______个直
显示全部