面向对象专题练习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
**专题5 面向对象
一、填空题
1.如果一个方法不返回任何值,则该方法的返回值类型为void 。(//有无返回值的意义何在)
2.如果子类中的某个方法名、返回值类型和_参数列表_____与父类中的某个方法完全一致,则称子类中的这个方法覆盖了父类的同名方法。
3.接口中所有的属性均为_public_、_final_____和_static__的,方法(public abstract )
4.抽象方法是一种仅有方法声明,没有具体方法体和操作实现的方法,该方法必须在具体类之中定义。
5.在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。
6.一般Java程序的类主体由两部分组成:一部分是属性,另一部分是方法。
7.分别用class 关键字来定义类,用new 关键字来分配实例存储空间。8.当一个类的修饰符为final 时,说明该类不能被继承,即不能有子类。9.在Java中,能实现多重继承效果的方式是接口。
二、选择题
1.方法内定义的变量(B)。
A.一定在方法内所有位置可见B.可能在方法的局部位置可见(for循环)C.在方法外可以使用D.在方法外可见
2.方法的形参()。
A.可以没有B.至少有一个
C.必须定义多个形参D.只能是简单变量
3.return语句()。
A.不能用来返回对象B.只可以返回数值
C.方法都必须含有D.一个方法中可以有多个(但是
返回只有一个)
4.main()方法的返回值类型是()
A.boolean B.int
C.void D.static
5.编译并运行下面的程序,运行结果是()。
public class A{
public static void main(String args[]){
A a=new A();
a.method(8);
}
void method(int i){
System.out.println(“int: ”+i);
}
void method(long i){
System.out.println(“long: ”+i);
}
A.程序可以编译运行,输出结果为:“int: 8”
B.程序可以编译运行,输出结果为:“long: 8”
C.程序有编译错误,因为两个method()方法必须定义为静态(static)的D.程序可以编译运行,但是没有输出
6.能作为类及其成员的修饰符是()。
A.interface B.class
C.protected D.public
7.下列方法定义中,方法头不正确的是()。
A.public static x(double a){…} B.public static int x(double y){…} C.void x(double d){…} D.public int x(){…}
8.构造方法在()时被调用。
A.类定义时B.使用对象的变量时
C.调用对象方法时D.创建对象时
9.下列哪个类声明是正确的()。
A.public abstract class Car{…}B.abstract private move(){…} C.protected private number; D.abstract final class H1{…} 10.下列不属于面向对象程序设计的基本特征的是()。
A.抽象B.封装
C.继承D.静态
11.请看下面的程序段
class Person{
String name,department;
int age;
public Person(String n){name=n;}
public Person(String n,int a){name=n; age=a;}
public Person(String n, String d, int a ){
//doing the same as two arguments version if constructer
}
下面那个选项可以添加到// doing the same……处(C )
A.Person(n,a)B.this(Person(n,a))
C.this(n,a) D.this(name.age)
12.请看下面的程序段
class Test{
private int m;
public static void fun(){
//some code
}
}
方法fun()如何来访问变量m( C )
A.将private int m 改成protected int m B.将private int m 改成public int m
C.将private int m 改成static int m D.将private int m 改成int m 13.有一个类A,对于其构造函数的声明正确的是()。
A.void A(int x){…}B.public A(int x){…}
C.A A(int x){…}D.int A(int x){…}
14.请看下面的程序段
public class Test{
long a[]=new long[10];//这里没有static修饰
pubic static void main(String args[]){
System.out.println(a[6]);
}
}
哪一个选项是正确的( C )。
A.不输出任何内容B.输出0
C.当编译时有错误出现D.当运行时有错误出现
15.关键字(B )表明一个对象或变量在初始化后不能修改。
A.extends B.final
C.this D.finalize
16.声明为static的方法不能访问(C )类成员。
A.超类B.子类
C.非static D.用户自定义类
17.定义类A如下: