1.在下面类声明中,关于生成对象不正确的是( )。
class point
{ public:
int x;
int y;
point(int a,int b) {x=a;y=b;}
};
A.
point p(10,2);
B.
point *p=new point(1,2);
C.
point *p=new point[2];
D.
point *p[2]={new point(1,2), new point(3,4)};
C
2.在面向对象的软件系统中,不同类对象之间的通信的一种构造称为_______。
A.
属性
B.
封装
C.
类
D.
消息
D
3.在面向对象系统中,对象的属性是________。
A.
对象的行为特性
B.
和其他对象相关联的方式
C.
和其他对象相互区分的特性
D.
与其他对象交互的方式
C
4.下列关于类定义的说法中,正确的是
A.
类定义中包括数据成员和函数成员的声明
B.
类成员的缺省访问权限是保护的
C.
数据成员必须被声明为私有的
D.
成员函数只能在类体外进行定义
A
5下列关于类和对象的叙述中,错误的是
A.
一个类只能有一个对象
B.
对象是类的具体实例
C.
类是对某一类对象的抽象
D.
类和对象的关系是一种数据类型与变量的关系
A
6类的实例化是指( )。
A.
定义类
B.
定义对象
C.
调用类的成员函数
D.
访问对象的数据成员
B
7以下代码运行输出是。
public class Person{
private String name=”Person”;
int age=0;
}
public class Child extends Person{
public String grade;
public static void main(String[] args){
Person p = new Child();
System.out.println(p.name);
}
}
A.
输出:Person
B.
没有输出
C.
编译出错
D.
运行出错
D 在子类中试图访问父类的private字段,所以编译出错
8以下对继承的描述错误的是
A.
Java中的继承允许一个子类继承多个父类
B.
Java中的继承存在着传递性
C.
父类更具有通用性,子类更具体
D.
当实例化子类时会递归调用父类中的构造方法
A Java不能多继承
9欲构造ArrayList类的一个实例,此类实现了List接口,下列哪个写法是正确的 ?
A.
ArrayList myList=new Object();
B.
List myList=new ArrayList();
C.
ArrayList myList=new List();
D.
List myList=new List()
本题考查在Java中如何实现接口。选项A错误,只是实例化了一个ArrayList类的对象myList,而没有实现接口;选项B正确,用List来声明MyList实现接口,并用ArrayList构造出一个实例;选项C错误,List并不是一个类,不能用new关键字;选项D错误,接口不能实例化一个接口。故本题正确答案选B
10以下有关类的继承的叙述中,正确的是:( )。
A.
子类能直继承父类所有的私有属性和私有方法,但是没有访问权限
B.
子类只能继承父类的方法,不能继承父类的属性
C.
子类能继承父类的成员变量和变员方法,访问没有任何限制
D.
子类不能继承父类的私有属性和私有方法
A
11在Java中,下列选项中接口的定义是正确的是?
A.
interface A{void print() { } ;}
B.
abstract interface B{ void print(){} ;}
C.
abstract interface C extends A,B{ abstract void print(){ };}
D.
interface D{void print();}
D
12Java语言中关于使用接口以下哪个说法正确?
A.
一个类只能实现一个接口
B.
实现一个接口必须实现接口的所有方法
C.
接口之间不能继承
D.
接口和抽象类是同一回事
B