2013 年中兴招聘笔试试题及答案
1. 下列代码的运行结果是:
public class GoTest {
public static void main(String[] args) {
Sente a = new Sente();
a.go();
Goban b = new Goban();
b.go();
Stone c = new Stone();
c.go();
}
}
class Sente implements Go {
public void go() {
System.out.println(“go in Sente”);
}
}
class Goban extends Sente {
public void go() {
System.out.println(“go in Goban”);
}
}
class Stone extends Goban implements Go {
}
interface Go {
public void go();
}
A. go in Goban
go in Sente
go in Sente
B. go in Sente
go in Sente
go in Goban
C. go in Sente
go in Goban
go in Goban
D. go in Goban
go in Goban
go in Sente
正确答案:C
2. A 类中有一个方法:protected int print(String str){},B 类继承 A 类,以下方法能在
B 类中重写 A 类中 print()方法的是: ()。
A.
public int print(String str){}
B.
private int print(String str){}
C.
private void print(String str){}
D.
public void print(String str){}
正确答案:A
3. List 类的对象 list 中的元素为:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],现在想返回该 list
对象的子集合[5,6,7,8],需要做的操作是:
A. list.subList(5, 8);
B. list.subList(5, 9);
C. list.subList(4, 8);
D. list.subList(4, 9);
正确答案:B
4. 下列代码的运行结果是:
String test = “Test A. Test B. Test C.”;
String regex = “\\.\\s*”;
String[] result = test.split(regex);
for (String s : result)
System.out.print(s + ” “);
A. Test A Test B Test C
B. Test A. Test B. Test C.
C. Test . Test . Test .
D. A. B. C.
正确答案:A
5.
运行下面的程序:
int a = 100;
int b = 200;
a = a + b;
b = a – b;
a = a – b;
System.out.println(“a=” + a + “, b=” + b);
输出的结果是:()。
A. a=100, b=300
B. a=100, b=200
C. a=200, b=100
D. a=300, b=200
正确答案:C
6.
类 A,B 和 C 的定义如下:
public class A {
public void f() {
System.out.println(“A.f()”);
}
}
public class B extends A {
public void f() {
System.out.println(“B.f()”);
}
}
public class C {
public void g(A a) {
System.out.println(“g(A a)”);
a.f();
}
public void g(B b) {
System.out.println(“g(B b)”);
b.f();
}
}
运行下面程序:
C c = new C();
A a = new B();
c.g(a);
输出的结果是:()。
A. g(A a)
A.f()
B. g(A a)
public int speed() {
return 150;
}
}
public class TestCar {
public static void main(String[] args) {
RaceCar racer = new RaceCar();
Car car = new RaceCar();
Vehicle vehicle = new RaceCar();
System.out.println(racer.speed() + “, ” + car.speed() + “, ”
+ vehicle.speed());
}
}
A.
0, 0,0
B.
150, 60, 0
C.
150, 150, 150
D.
抛出运行时异常
正确答案:C
9. 下列数组声明语句中,错误的是:()。
A.
int[] arr = new int[8];
B.
int[] arr = new int[8]{};
C.
int[] arr = {};
D.
int[] arr = new int[]{};
正确答案:B
10. 运行下列代码:
int[] oneArr = { 2, 11, 26, 27, 37, 44, 48, 60 };
int[] twoArr = { 19, 35, 49, 55, 58, 75, 83, 84, 91, 93 };
int[] threeArr = new int[oneArr.length + twoArr.length];
int p = 0, q = 0;
while (p < oneArr.length && q < twoArr.length) {
threeArr[p + q] =
oneArr[p] < twoArr[q] ? oneArr[p++] : twoArr[q++];
}
if (p < oneArr.length) {
System.arraycopy(oneArr, p, threeArr, p + q, oneArr.length – p);
}
else if (q < twoArr.length) {
System.arraycopy(twoArr, q, threeArr, p + q, twoArr.length – q);
}
System.out.println(Arrays.toString(threeArr));
输出的结果是:()。
A. [2,11,26,27,37,44,48,60,19,35,49,55,58,75,83,84,91,93];
B. [2,11,19,26,27,35,37,44,48,49,55,58,60,75,83,84,91,93];
C. [19,35,49,55,58,75,83,84,91,93,2,11,26,27,37,44,48,60];
D. [2,19,11,35,26,49,27,55,37,58,44,75,48,83,60,84,91,93];
正确答案:B
11.
请看下列代码:
public static void main(String[] args) {
<插入代码>
set.add(new Integer(2));
set.add(new Integer(1));
System.out.println(set);
}
如果想保证程序的输出结果是[1,2],那么<插入代码>处应填入的代码是()。
A.
Set set = new TreeSet();
B.
Set set = new HashSet();
C.
Set set = new SortedSet();
D.
Set set = new LinkedHashSet();
正确答案:A
12.
仔细分析下列代码,请指出错误的行()。
public class SomeThing{
private String str;
public int addOne(final int x){
return ++x;
}
}
A.
public class SomeThing
B.
private String str;
C.
public int addOne(final int x)