- 相關(guān)推薦
中興2013年Java開發(fā)筆試題目及答案
1.請看以下代碼,關(guān)于這段代碼描述正確的是:( )
public class Account{
private String cardId;
public String getCardId() {
return cardId;
}
public void setCardId (String cardId) {
this. cardId = cardId;
}
}
A.Account類符合JavaBean的規(guī)則
B.Account類不符合JavaBean的規(guī)則,因為沒有無參數(shù)構(gòu)造方法
C.Account類不符合JavaBean的規(guī)則,因為沒有實現(xiàn)序列化接口
D.Account類不符合JavaBean的規(guī)則,因為方法名getCardId應(yīng)改為getcardId
正確答案:C
2.運行下面程序:
public class Foo {
public static void main(String[] args) {
StringBuffer a=new StringBuffer(“A”);
StringBuffer b=new StringBuffer(“B”);
operator(a,b);
System.out.println(a+”,”+b);
}
public static void operator(StringBuffer x,StringBuffer y){
x.append(y);
y=x;
}
}
輸出的結(jié)果是:()。
A.A,B
B.A,A
C.B,B
D.AB,B
正確答案:D
3.下面的程序可以輸出1~100內(nèi)前10個3的倍數(shù):
for (int i = 1, count = 0; i < 100; i++) {
if (i % 3 == 0) {
System.out.println(i);
(空白處)
}
}
下列選項中,空白處可以填入的代碼是()。
A. if (count++ >= 10) {
break;
}
B. if (++count >= 10) {
break;
}
C. if (count++ >= 10) {
continue;
}
D. if (++count >= 10) {
continue;
}
正確答案:B
4.運行下面程序:
String[] strArr = { “aaa”, “b”, “cc” };
Arrays.sort(strArr, new Comparator() {
public int compare(String o1, String o2) {
return o2.compareTo(o1);
}
});
System.out.println(Arrays.toString(strArr));
輸出的結(jié)果是:()。
A.[aaa, b, cc]
B.[cc, b, aaa]
C.[b, cc, aaa]
D.[aaa, cc, b]
正確答案:B
5. 對數(shù)組int[] arr = { 52, 93, 16, 67, 36, 92, 26, 12, 25, 92 }用插入排序法由小到大進(jìn)行排序,經(jīng)過3輪排序后,數(shù)組arr的值為:()。
A. {12,16,25,52,93,26,67,36,92,92}
B. {12,16,25,67,36,92,26,52,93,92}
C. {16,52,67,93,36,92,26,12,25,92}
D. {16,36,52,67,93,92,26,12,25,92}
正確答案:C
6.下列代碼的輸出結(jié)果是:()。
public class StaticFoo {
int num;
static int x;
public static void main(String[] args) {
StaticFoo foo1 = new StaticFoo ();
foo1.num++;
foo1.x++;
StaticFoo foo2 = new StaticFoo ();
foo2.num++;
foo2.x++;
StaticFoo foo3 = new StaticFoo ();
foo3.num++;
foo3.x++;
StaticFoo.x++;
System.out.print(foo3.num+”,”);
System.out.println(foo3.x);
}
}
A.3,3
B.1,3
C.3,4
D.1,4
正確答案:D
7.下列代碼編譯和運行的結(jié)果是()
public class Foo {
public static void main(String[] args) {
java.util.List list = new java.util.ArrayList();
list.add(new B());
list.add(new C());
for (A a : list) {
a.x();
a.y();
}
}
}
interface A {
void x();
}
class B implements A {
public void x() {}
public void y() {}
}
class C extends B {
public void x() {}
}
A.代碼運行沒有輸出
B.運行時拋出異常
C.代碼a.y();行,編譯錯誤
D.代碼java.util.List list = new java.util.ArrayList();行,編譯錯誤
正確答案:C
8.請看下列代碼:
class ClassA {}
class ClassB extends ClassA {}
class ClassC extends ClassA {}
public class Test{
public static void main(String[] args) {
ClassA p0 = new ClassA();
ClassB p1 = new ClassB();
ClassC p2 = new ClassC();
ClassA p3 = new ClassB();
ClassA p4 = new ClassC();
<插入代碼>
}
}
可以在<插入代碼>處,填入的代碼正確的是()
A.p0 = p1;
B.p1 =p2;
C.p2 = p4;
D.p2 = (ClassC)p1;
正確答案:A
9. 運行下面的語句:
System.out.println(Math.round(3.5) + ” ” + Math.floor(3.5) + ” ”
+ Math.ceil(3.5) + ” ” + Math.round(-3.5) + ” ”
+ Math.floor(-3.5) + ” ” + Math.ceil(-3.5));
輸出的結(jié)果是:()。
A. 4 3.0 4.0 -3 -3.0 -4.0
B. 4 3.0 4.0 -4 -3.0 -4.0
C. 4 4.0 3.0 -4 -4.0 -3.0
D. 4 3.0 4.0 -3 -4.0 -3.0
正確答案:D
10. 下列賦值語句中,正確的是()。
A. byte b1 = 10, b2 = 20;
byte b=b1+b2;
B. byte b1 = 10, b2 = 20;
byte b=~b1;
C. byte b1 = 10, b2 = 20;
byte b=b1>>1;
D. byte b1 = 10;
byte b=++b1;
正確答案:D
11.類Super及Sub定義如下:
public class Super {
private void f() {
System.out.println(“Super.f()”);
}
public void g() {
f();
}
public void k() {
f();
}
}
public class Sub extends Super {
private void f() {
System.out.println(“Sub.f()”);
}
public void k() {
f();
}
}
運行下列語句:
Super obj = new Sub();
obj.g();
obj.k();
輸出的結(jié)果是:()。
A. Sub.f()
Sub.f()
B. Sub.f()
Super.f()
C. Super.f()
Sub.f()
D. Super.f()
Super.f()
正確答案:C
12.下列代碼的輸出結(jié)果是()
public static void main(String[] args) {
String test = “a1b2c3″;
String[] tokens = test.split(“\\d”);
for (String s : tokens)
System.out.print(s + ” “);
}
A.a b c
B.1 2 3
C.a1b2c3
D.a1 b2 c3
正確答案:A
13.運行下列程序:
String str = “**java***java*****java*”;
String str1 = “java”;
int index = 0;
while ((index = str.indexOf(str1, index)) != -1) {
System.out.print(index+””);
index += str1.length();
}
控制臺輸出的結(jié)果是:()。
A. 1 8 17
B. 2 9 18
C. 5 12 21
D. 6 13 22
正確答案:B
14.運行下面程序:
public class Foo{
public static void main(String[] args) {
try {
test();
System.out.println(“condition 1″);
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println(“condition 2″);
} catch (Exception e) {
System.out.println(“condition 3″);
} finally {
System.out.println(“finally”);
}
}
public static void test() {
String str = “cc”;
str.compareTo(“abc”);
}
}
輸出的結(jié)果是:()。
A.condition 1
finally
B.condition 2
finally
C.condition 1
condition 3
finally
D.condition 1
condition 2
finally
正確答案:A
15.下列代碼的作用說法不正確的是:()。
class Card implements java.io.Serializable{}
A.開啟序列化功能,使得Card類的對象可以存儲到文件中
B.開啟序列化功能,使得Card類的對象可以在網(wǎng)絡(luò)上傳輸
C.使得Card類的子類的對象可以被序列化
D.導(dǎo)致Card的子類的對象不可以被反序列化
正確答案:D
16. try{}里有一個return語句,那么緊跟在這個try后的finally{}里的代碼執(zhí)行的情況是:()。
A.會執(zhí)行,在return前執(zhí)行
B.會執(zhí)行,在return后執(zhí)行
C.不會執(zhí)行
D.會拋出異常
正確答案:A
17. 關(guān)于Java 異常,下列說法錯誤的是()。
A.異常是定義了程序中遇到的非致命的錯誤,而不是編譯時的語法錯誤
B.try……catch語句中對try 內(nèi)語句監(jiān)測,如果發(fā)生異常,則把異常信息放入Exception類的對象中
C.throws 用來表示一個方法有可能拋出異常給上一層,則在調(diào)用該方法時必須捕捉異常,否則無法編譯通過
D.Main方法不可以使用 throws 拋出異常
正確答案:D
18. 下列關(guān)于IDE開發(fā)環(huán)境Eclipse,說法錯誤的是:()。
A. Eclipse可以通過插件(plugin)的方式擴(kuò)展其功能。
B. Eclipse聯(lián)盟是由IBM公司捐資組建的。
C. Eclipse使用了SWT圖形界面技術(shù)。
D. Eclipse的運行不需要有JRE的支持。
正確答案:D
19. 運行下列代碼:
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));
輸出的結(jié)果是:()。
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
20.運行下面的程序:
int a = 100;
int b = 200;
a = a + b;
b = a – b;
a = a – b;
System.out.println(“a=” + a + “, b=” + b);
輸出的結(jié)果是:()。
A. a=100, b=300
B. a=100, b=200
C. a=200, b=100
D. a=300, b=200
正確答案:C
21. 關(guān)于Java線程說法錯誤的是()。
A.創(chuàng)建線程的有2種方式,方式1是繼承Thread類,方式2是實現(xiàn) Runnable 接口
B.解決線程安全使用問題 synchronized關(guān)鍵字,使得同一時間只有一個線程執(zhí)行該關(guān)鍵字限定的代碼段
C.線程間通信所使用的方法有,wait,notify,notifyAll,它們都是 Thread 的方法
D.Java線程包括5個狀態(tài),線程的創(chuàng)建,可運行,運行,阻塞和消亡
正確答案:C
22. 如下方法聲明中,錯誤的是()。
A.public void say(){ System.out.print(“Hi”); }
B.public void say() { System.out.print(“Hi”); return; }
C.public int say(){ System.out.print(“Hi”); return; }
D.public int say(){ System.out.print(“Hi”); return 0; }
正確答案:C
23.下列代碼的輸出結(jié)果是()。
boolean b=true?false:true==true?false:true;
System.out.println(b);
A.true
B.false
C.null
D.空字符串
正確答案:B
24.執(zhí)行下列語句:int num=~3+2; 變量num的值為()。
A.-3
B.3
C.-2
D.-1
正確答案:C
25. 關(guān)于String 和 StringBuffer 下面說法正確的是()。
A.String操作字符串不改變原有字符串的內(nèi)容
B.StringBuffer連接字符串速度沒有String 快
C.String 可以使用append方法連接字符串
D.StringBuffer 在java.util包中
正確答案:A
26.運行下面的語句:
String s=”";
if(s==s+0){
System.out.println(“Hello World”);
}
編譯,運行的結(jié)果是:()。
A.Hello World
B.無輸出
C.編譯錯誤
D.拋出運行時異常
正確答案:B
27. 在Java語言中,下列說法正確的是:()。
A. Java訪問修飾符按照訪問范圍由低到高的排列順序是public,default,protected,private
B. private可以用于外部類的聲明
C. 一個Java源文件中聲明為public的外部類只能有一個
D. protected聲明的方法不可以被子類重寫
正確答案:C
28. IO 包中,唯一代表磁盤本身的對象類是()。
A.FileInputStream
B.File
C.InputStream
D.BufferedReader
正確答案:B
29. 下面關(guān)于final說法錯誤的是:()
A. final修飾類時,該類不能被繼承。
B. final修飾方法時,該方法不能被重寫。
C. 當(dāng)引用到使用static final 修飾的常量時,將采用編譯期綁定的方式。
D. 當(dāng)使用final和abstract共同修飾一個類時,final應(yīng)至于abstract之前。
正確答案:D
30. 下列選項中的類,能正確實現(xiàn)java.lang.Runnable接口和java.lang.Clonable接口的是()。
A.public class Session implements Runnable, Clonable {
public void run();
public Object clone();
}
B.public class Session implements Runnable, implements Clonable {
public void run() { / do something */ }
public Object clone() { / make a copy */ }
}
C.public class Session implements Runnable, Clonable {
public void run() { / do something */ }
public Object clone() { /* make a copy */ }
}
D.public class Session extends Runnable, Clonable {
public void run() ;
public Object clone();
}
正確答案:C
31. 下列屬于不合法Java標(biāo)識符的是()。
A._avaj
B.5save
C.Avaj
D.$80
正確答案:B
32.分析如下代碼,輸出結(jié)果為()。
public static void main(String[] args) {
int i = 0;
boolean re = false;
re = ((++i) + i == 2) ? true : false;
System.out.println(“i=” + i + “,re=”+re);
}
A.i=1,re=true
B.i=0,re=true
C.i=1,re=false
D.i=0,re=false
正確答案:A
33. 下面關(guān)于interface,敘述錯誤的是:()
A.一個interface可以繼承多個interface
B.接口中的方法可以由private修飾
C.interface中可以定義static final 常量
D.interface中可以無任何方法定義
正確答案:B
34.請看下列代碼:
public static void main(String[] args) {
<插入代碼>
System.out.println(s);
}
如果程序輸出的結(jié)果是4247,那么在<插入代碼>處應(yīng)該填入代碼是()。
A.String s = “123456789″;
s = (s-”123″).replace(1,3,”24″) – “89″;
B.StringBuffer s = new StringBuffer(“123456789″);
s.delete(0,3).replace( 1,3, “24″).delete(4,6);
C.StringBuffer s = new StringBuffer(“123456789″);
s.substring(3,6).delete( 1 ,3).insert( 1, “24″);
D.StringBuilder s = new StringBuilder(“123456789″);
s.substring(3,6).delete( 1 ,2).insert( 1, “24″);
正確答案:B
35. 下面關(guān)于數(shù)組的聲明語句中,有編譯錯誤的是:()。
A. int[] arr = new int[]{1,2,3};
B. int[] arr = null;arr = {1,2,3,4,5};
C. int[][] arr = new int[][]{{1,2,3},{4,5},{6}}
D. int[][] arr = new int[2][];
正確答案:B
36. 下列賦值語句中,會有編譯錯誤的是()。
A. int a = 8888888888;
B. char b = 1000+300;
C. byte c = 100+30;
D. int d = ‘a’+'b’+'c’;
正確答案:AC
37. 下面的方法屬于StringBuffer的是:()。
A. size
B. insert
C. delete
D. length
正確答案:BCD
38.查看如下代碼:
class A {
protected int method (int a, int b) {
return 0;
}
}
下列選項中,可以在 A 的子類中使用的是()。
A. public int method (int a, int b) { return 0; }
B. private int method(int a, int b) { return 0; }
C. private int method(int a, long b) { return 0; }
D. public short method(int a, int b) { return 0; }
正確答案:AC
39.查看如下代碼:
public class Foo {
public void method(String str,int age){}
}
下列選項中,和 Foo 類中 method 方法重載的方法是()。
A.public int method(String str,int age){}
B. public void method(int year,String s){}
C. public int method(int year,String s){}
D. public int method(String str){}
正確答案:BCD
40. 下列異常類是RuntimeException的子類的是:()。
A. ArrayIndexOutOfBoundsException
B. NullPointerException
C. NumberFormatException
D. ClassNotFoundException
正確答案:ABC
41.IO類實現(xiàn)了打開并讀取一個文本文件,每次讀取一行內(nèi)容。 將每行作為一個String字符串放入String數(shù)組里面返回。閱讀代碼并完成以下5題:
public class IO {
public String[] read(InputStream in) throws IOException {
String[] arr = new String[1];
String[] temp = null;
空白處1
String line =””;
while (( 空白處2 ) != null) {
arr[arr.length - 1] = line;
空白處3
for (int i = 0; i < arr.length; i++) {
temp[i] = arr[i];
}
空白處4
for (int i = 0; i < arr.length; i++) {
arr[i] = temp[i];
}
}
arr = new String[temp.length - 1];
for (int i = 0; i < arr.length; i++) {
arr[i] = temp[i];
}
br.close();
return arr;
}
public static void main(String[] args) throws IOException {
String[] arr = new IO().read(new FileInputStream(“data.txt”));
System.out.println(arr);
空白處5
System.out.println(str);
}
}
}
(1). 下列選項中,能填入空白處1的代碼是( )
A.BufferedReader br = new BufferedReader(new InputStreamReader(in));
B.BufferedReader br = new BufferedReader(new FileReader(in));
C.FileReader br=new FileReader(in);
D.InputStreamReader br=new InputStreamReader(in);
正確答案:A
(2). 下列選項中,能填入空白處2的代碼是( )
A.line = br.read();
B.line = br.readLine();
C.line = br.readString();
D.line = br.readUTF();
正確答案:B
(3). 下列選項中,能填入空白3的代碼是( )
A.temp = new String[arr.length + 1];
B.temp = new String[arr.length];
C.temp = new String[arr.length-1];
D.temp = new String[arr.length/2];
正確答案:A
(4). 下列選項中,能填入空白處4的代碼是( )
A.arr = new String[temp.length/2];
B.arr = new String[temp.length-1];
C.arr = new String[temp.length+1];
D.arr = new String[temp.length];
正確答案:D
(5). 下列選項中,能填入空白處5的代碼是( )
A.for (arr: String str) {
B.for (arr[]:String str){
C.for (String str : arr) {
D.for (String str : arr[]) {
正確答案:C
42.閱讀理解
public class A {
public A() {
System.out.print(“A “);
}
public A(String s) {
System.out.print(s);
}
public void fun() {
System.out.println(“A.fun()”);
}
}
public class B extends A {
public B() {
System.out.print(“B “);
}
public B(String s) {
super(s);
}
public void fun() {
System.out.println(“B.fun()”);
}
public void sun(){
System.out.println(“B.sun()”);
}
public static void Main() {
A a = new B();
a.fun();
}
}
(1).下列關(guān)于上述代碼中構(gòu)造方法的描述,錯誤的是()。
A.實例化對象 a 時,將默認(rèn)調(diào)用父類的無參構(gòu)造方法
B.類 B中使用 super 關(guān)鍵字,是為了調(diào)用父類的含有一個參數(shù)的構(gòu)造方法
C.實例化對象 a 時,父類A和子類B的構(gòu)造方法都會被調(diào)用到
D.實例化父類對象時,調(diào)用父類 A 的構(gòu)造方法;實例化子類對象時,則只調(diào)用子類B的構(gòu)造方法
正確答案:D
(2).該代碼運行后,輸出為:()。
A.A B A.fun()
B.A B B.fun()
C.B A A.fun()
D.B A B.fun()
正確答案:B
(3).如果 main 方法中如此調(diào)用:
public static void main(String[] args)
{
A a = new B(“Hello,”);
a.fun();
}
其他代碼不變,該代碼運行后,輸出為:()。
A.A A.fun()
B.B A.fun()
C.Hello,A.fun()
D.Hello,B.fun()
正確答案:D
(4).如果 main 方法中如此調(diào)用:
public static void main(String[] args)
{
A a = new A();
a.sun();
}
其它代碼不變,下列說法正確的是:()。
A.運行輸出結(jié)果為:A B.sun()
B.運行輸出結(jié)果為:A B B.sun()
C.運行輸出結(jié)果為:B A B.sun()
D.編譯錯誤
正確答案:D
(5).下列關(guān)于上述代碼的描述,正確的是()。
A.如果將A類定義成public abstract class A,那么方法fun必須定義成抽象方法
B.如果將A類定義成public abstract class A,那么A類中必須有一個抽象方法
C.如果將A類中的方法fun定義成public abstract void fun(),那么A類必須是抽象類
D.如果將A類定義成public abstract class A,那么A類應(yīng)然可以實例化對象
正確答案:C
【中興Java開發(fā)筆試題目及答案】相關(guān)文章:
中興Java Web開發(fā)工程師筆試題及答案07-17
java筆試題目及答案07-27
中興筆試題目分享有答案07-24
最新中興Java語言筆試真題及答案08-24
JAVA經(jīng)典筆試題目及答案(精選7套)08-03
java筆試題,筆試題目分享08-10
java筆試題及答案07-28
java筆試題及答案07-17