1.若有定义:byte[]x={11,22,33,﹣66};其中0≤k≤3,则对x数组元素错误的引用是()
正确答案: C 你的答案: C (正确)
A、 x[5-3]
B、 x[k]
C、 x[k+5]
D、x[0]
2.下列说法正确的是()
正确答案: B 你的答案: B (正确)
A、 在类方法中可用this来调用本类的类方法
B、 在类方法中调用本类的类方法时可直接调用
C、 在类方法中只能调用本类中的类方法
D、 在类方法中绝对不能调用实例方法
解析: 在类方法中不能有this关键字,直接调用类方法即可,A错误,B正确,在类方法中可以通过创建实例对象调用类的实例方法,C\D错误
3.java语言的下面几种数组复制方法中,哪个效率最高?
正确答案: B 你的答案: B (正确)
A、for 循环逐一复制
B、System.arraycopy
C、Array.copyOf
D、使用clone方法
解析:效率:System.arraycopy > clone > System.copyOf > for循环
4.下面不是面向对象的基本原则的是?
正确答案: C 你的答案: C (正确)
A、单一职责原则(Single-Resposibility Principle)
B、开放封闭原则(Open-Closed principle)
C 、抽象类原则(Abstract-Class principle)
D、依赖倒置原则(Dependecy-Inversion Principle)
E、接口隔离原则(Interface-Segregation Principle)
解析:
五个基本原则:
单一职责原则(Single-Resposibility Principle):一个类,最好只做一件事,只有一个引起它的变化。单一职责原则可以看做是低耦合、高内聚在面向对象原则上的引申,将职责定义为引起变化的原因,以提高内聚性来减少引起变化的原因。
开放封闭原则(Open-Closed principle):软件实体应该是可扩展的,而不可修改的。也就是,对扩展开放,对修改封闭的。
Liskov替换原则(Liskov-Substituion Principle):子类必须能够替换其基类。这一思想体现为对继承机制的约束规范,只有子类能够替换基类时,才能保证系统在运行期内识别子类,这是保证继承复用的基础。
依赖倒置原则(Dependecy-Inversion Principle):依赖于抽象。具体而言就是高层模块不依赖于底层模块,二者都同依赖于抽象;抽象不依赖于具体,具体依赖于抽象。
接口隔离原则(Interface-Segregation Principle):使用多个小的专门的接口,而不要使用一个大的总接口
5.一般情况下,以下哪个选项不是关系数据模型与对象模型之间匹配关系?
正确答案: D 你的答案: D (正确)
A、表对应类
B、记录对应对象
C 、表的字段对应类的属性
D、表之间的参考关系对应类之间的依赖关系
解析:一般关系数据模型和对象数据模型之间有以下对应关系:表对应类,记录对应对象,表的字段对应类的属性
6.以下程序执行的结果是:
class X{
Y y=new Y();
public X(){
System.out.print("X");
}
}
class Y{
public Y(){
System.out.print("Y");
}
}
public class Z extends X{
Y y=new Y();
public Z(){
System.out.print("Z");
}
public static void main(String[] args) {
new Z();
}
}
正确答案: C 你的答案: C (正确)
A. ZYXX
B.ZYXY
C. YXYZ
D.XYZX
解析:
初始化过程:
1. 初始化父类中的静态成员变量和静态代码块 ;
2. 初始化子类中的静态成员变量和静态代码块 ;
3.初始化父类的普通成员变量和代码块,再执行父类的构造方法;
4.初始化子类的普通成员变量和代码块,再执行子类的构造方法;
(1)初始化父类的普通成员变量和代码块,执行 Y y=new Y(); 输出Y
(2)再执行父类的构造方法;输出X
(3) 初始化子类的普通成员变量和代码块,执行 Y y=new Y(); 输出Y
(4)再执行子类的构造方法;输出Z
所以输出YXYZ
正确答案: C 你的答案: C (正确)
A、 x[5-3]
B、 x[k]
C、 x[k+5]
D、x[0]
2.下列说法正确的是()
正确答案: B 你的答案: B (正确)
A、 在类方法中可用this来调用本类的类方法
B、 在类方法中调用本类的类方法时可直接调用
C、 在类方法中只能调用本类中的类方法
D、 在类方法中绝对不能调用实例方法
解析: 在类方法中不能有this关键字,直接调用类方法即可,A错误,B正确,在类方法中可以通过创建实例对象调用类的实例方法,C\D错误
3.java语言的下面几种数组复制方法中,哪个效率最高?
正确答案: B 你的答案: B (正确)
A、for 循环逐一复制
B、System.arraycopy
C、Array.copyOf
D、使用clone方法
解析:效率:System.arraycopy > clone > System.copyOf > for循环
4.下面不是面向对象的基本原则的是?
正确答案: C 你的答案: C (正确)
A、单一职责原则(Single-Resposibility Principle)
B、开放封闭原则(Open-Closed principle)
C 、抽象类原则(Abstract-Class principle)
D、依赖倒置原则(Dependecy-Inversion Principle)
E、接口隔离原则(Interface-Segregation Principle)
解析:
五个基本原则:
单一职责原则(Single-Resposibility Principle):一个类,最好只做一件事,只有一个引起它的变化。单一职责原则可以看做是低耦合、高内聚在面向对象原则上的引申,将职责定义为引起变化的原因,以提高内聚性来减少引起变化的原因。
开放封闭原则(Open-Closed principle):软件实体应该是可扩展的,而不可修改的。也就是,对扩展开放,对修改封闭的。
Liskov替换原则(Liskov-Substituion Principle):子类必须能够替换其基类。这一思想体现为对继承机制的约束规范,只有子类能够替换基类时,才能保证系统在运行期内识别子类,这是保证继承复用的基础。
依赖倒置原则(Dependecy-Inversion Principle):依赖于抽象。具体而言就是高层模块不依赖于底层模块,二者都同依赖于抽象;抽象不依赖于具体,具体依赖于抽象。
接口隔离原则(Interface-Segregation Principle):使用多个小的专门的接口,而不要使用一个大的总接口
5.一般情况下,以下哪个选项不是关系数据模型与对象模型之间匹配关系?
正确答案: D 你的答案: D (正确)
A、表对应类
B、记录对应对象
C 、表的字段对应类的属性
D、表之间的参考关系对应类之间的依赖关系
解析:一般关系数据模型和对象数据模型之间有以下对应关系:表对应类,记录对应对象,表的字段对应类的属性
6.以下程序执行的结果是:
class X{
Y y=new Y();
public X(){
System.out.print("X");
}
}
class Y{
public Y(){
System.out.print("Y");
}
}
public class Z extends X{
Y y=new Y();
public Z(){
System.out.print("Z");
}
public static void main(String[] args) {
new Z();
}
}
正确答案: C 你的答案: C (正确)
A. ZYXX
B.ZYXY
C. YXYZ
D.XYZX
解析:
初始化过程:
1. 初始化父类中的静态成员变量和静态代码块 ;
2. 初始化子类中的静态成员变量和静态代码块 ;
3.初始化父类的普通成员变量和代码块,再执行父类的构造方法;
4.初始化子类的普通成员变量和代码块,再执行子类的构造方法;
(1)初始化父类的普通成员变量和代码块,执行 Y y=new Y(); 输出Y
(2)再执行父类的构造方法;输出X
(3) 初始化子类的普通成员变量和代码块,执行 Y y=new Y(); 输出Y
(4)再执行子类的构造方法;输出Z
所以输出YXYZ