更新時間:2016年03月08日13時49分 來源:傳智播客 瀏覽次數(shù):
共50道題,每道題2分,總分100分,80分為合格。
注意,題目有多選,也有單選。請認(rèn)真作答。
對應(yīng)試者的忠告:
傳智播客從辦學(xué)一來,一直在IT培訓(xùn)領(lǐng)域保持著良好的口碑,之所以能做到這么好的口碑,主要得益于過硬的教學(xué)質(zhì)量以及學(xué)員的高就業(yè)率。
本測試題的目的在于幫助學(xué)員檢測自己的java基礎(chǔ),因為公司要保證教學(xué)質(zhì)量,光有名師授課是遠(yuǎn)遠(yuǎn)不夠的,還需要學(xué)員們都具備一個基本的java基礎(chǔ),試想一下,如果學(xué)員入學(xué)前我們不進(jìn)行測試,那么必然會導(dǎo)致學(xué)生的技術(shù)水平參差不齊,再好的老師也無法把這樣的班教好。
希望參加測試的學(xué)員能本著對自己負(fù)責(zé)的態(tài)度,獨立完成這套測試題。
如果您試圖通過找人幫忙做題等其他途徑來完成這套測試題,我們勸您千萬別這樣做,因為這樣是害了自己。即使通過測試,順利進(jìn)入就業(yè)班的學(xué)習(xí),同樣是跟不上老師的進(jìn)度,不會有一個好的結(jié)果。
如果您覺得完成這套測試題非常有難度,那也沒有關(guān)系,因為我們針對基礎(chǔ)不好的學(xué)員專門開設(shè)了 java基礎(chǔ)與加強班,您可以通過短時間的培訓(xùn),打下一個堅實的基礎(chǔ),再繼續(xù)參加我們就業(yè)班的培訓(xùn)。
1. 在JAVA中,下列哪些說法是正確的( )
A.java源文件的擴展名為.java
B.寫好的java源程序可以直接運行
C.編寫的源程序必須先編譯后才能運行
D.程序員可以讀懂?dāng)U展名為.class的文件
2. 下列標(biāo)識符哪個是合法的( )
A.class
B.$abc
C.1234
D._name
3. 下面哪些賦值語句是正確的?( )
A. long test = 012;
B. float f = -412;
C. int other = (int) true;
D. double d = 0x12345678;
E. byte b = 128;
4. 在Java中,下列語句不能通過編譯的有( )
A. String s= “join”+ 3;
B. int a= “join”+3;
C. int a= ‘a’+5;
D. float f=5+5.5;
5. 設(shè) a = 3,則表達(dá)式 (--a )<
A. 16
B. 8
C. 24
D. 12
6. 下列代碼運行的結(jié)果是( )
public static void main(String[] args) {
int x = 4;
int y = 5;
if(x++>4 & ++y>5) {
x++;
}
System.out.println("x=" + x + ",y=" + y);
}
A. x=4,y=5
B. x=4,y=6
C. x=5,y=6
D. x=6,y=6
7. 嘗試運行下面的代碼會發(fā)生什么?( )
public class Test {
public static void main(String[] args) {
boolean m = true;
if (m = false) {
System.out.println("true");
} else {
System.out.println("false");
}
}
}
A. 輸出字符串”true”
B. 輸出字符串”false”
C. 編譯時錯誤
D. 運行時錯誤
8. 編譯并運行以下代碼將發(fā)生什么? ( )
public static void main(String args[]){
char digit = 'a';
for (int i = 0; i < 10; i++){
switch (digit)
{
case 'x' :
{
int j = 0;
System.out.println(j);
}
default :
{
int j = 100;
System.out.println(j);
}
}
}
int i = j;
System.out.println(i);
}
A. 輸出11次100
B. 輸出10次100,然后拋出運行期異常
C. 編譯錯誤,因為變量i不能在main() 方法中被聲明2次
D. 編譯錯誤,因為變量j不能在main() 方法中被聲明2次
E. 以上都不對
9. class Demo
{
public static int fun(int c)
{
return c+=2;
}
public static void main(String[] args)
{
int temp = fun(2);
System.out.println(temp);
}
}
A. 2
B. 4
C. 6
D. 8
10. 下面哪些函數(shù)是public void aMethod(){...}的重載函數(shù)?( )
A. void aMethod( ){...}
B. public int aMethod(int a, float b){...}
C. public void aMethod (){...}
D. public float aMethod (int m){…}
11. 在java中,關(guān)于數(shù)組描述正確的是( )
A.數(shù)組中的索引下標(biāo)從1開始
B.存儲在數(shù)組當(dāng)中的數(shù)據(jù)都屬于同一數(shù)據(jù)類型
C.通過數(shù)組名.length()能獲得數(shù)組的長度
D.數(shù)組的最大索引下標(biāo)是數(shù)組的長度減1
12. 下面程序的輸出結(jié)果是什么( )
int[] arr = new int[10];
System.out.println(arr[0]);
A.編譯不通過
B.運行時出錯
C.輸出null
D.輸出0
13. 下面哪個語句正確地聲明一個整型的二維數(shù)組( )
A. int a[][] = new int[][];
B. int b[10][10] = new int[][];
C. int c[][] = new int[10][10];
D. int []d[] = new int[10][10];
14. 以下代碼輸出是( )
class Demo {
public static void main(String[] args) {
int i = 0;
int sum = 0;
while (i <= 10) {
i++;
if (i % 2 != 0)
continue;
sum += i;
}
System.out.println(sum);
}
}
A. 55
B. 45
C. 35
D. 30
15. 和下面代碼能完成相同的選項是()
class Demo {
public static void main(String[] args) {
int i = 1;
int sum = 0;
while (i <= 100) {
if (i % 2 == 0) {
sum = sum + i;
}
i++;
}
System.out.println(sum);
}
}
A. for (int x =1; x<=100;x++){ sum=sum+x;}
B. for (int x =0; x<=100;x+=2){ sum=sum+x;}
C. for (int x =1; x<=100;x+=2){ sum=sum+x;}
D.上述全對
16. 下列有關(guān)類、對象和實例的敘述,正確的是哪一項?()
A.類就是對象,對象就是類,實例是對象的另一個名稱,三者沒有差別
B.對象是類的抽象,類是對象的具體化,實例是對象的另一個名稱
C.類是對象的抽象,對象是類的具體化,實例是類的另一個名稱
D.類是對象的抽象,對象是類的具體化,實例是對象的另一個名稱
17. 下面關(guān)于java中包的說法正確的是( )
A. 在java中可以使用import語句導(dǎo)入包
B. 在java中可以使用package語句導(dǎo)入包
C. 位于同一個包中的類,不需要導(dǎo)包就可以直接訪問
D. 不同的包中可以出現(xiàn)類名相同的類
18. 下列有關(guān)抽象類的敘述正確的是哪項?()
A.抽象類中一定含有抽象方法
B.抽象類既能被實例化也能被繼承
C.抽象類的聲明必須包含abstract關(guān)鍵字
D.抽象類中不能有構(gòu)造方法
19. 下列有關(guān)接口的敘述錯誤的是哪項?()
A.接口中只能包含抽象方法和常量
B.一個類可以實現(xiàn)多個接口
C.類實現(xiàn)接口時必須實現(xiàn)其中的方法
D.接口不能被繼承
20. 運行以下代碼片段,輸出結(jié)果是?( )
class X {
Y b = new Y();
X() {
System.out.print("X");
}
}
class Y {
Y() {
System.out.print("Y");
}
}
public class Z extends X {
Y y = new Y();
Z() {
System.out.print("Z");
}
public static void main(String[] args) {
new Z();
}
}
A. Z
B. YZ
C. XYZ
D. YXYZ
21. 下列關(guān)于類的繼承的描述,正確的有( )
A. 一個類可以同時繼承多個父類
B. 一個類可以具有多個子類
C. 子類會自動擁有父類所有的方法
D. 一個類繼承另一個類需要使用 extends 關(guān)鍵字
22. 下列選項中關(guān)于java中this關(guān)鍵字的說法錯誤的有( )
A. this關(guān)鍵字是一個對象的引用
B. this關(guān)鍵字可以用于引用當(dāng)前類以外其他類型的對象
C. this可用于構(gòu)造函數(shù)中,調(diào)用類本身重載的構(gòu)造函數(shù),但是必須寫在首行
D. this可用于靜態(tài)方法中
23. 下列關(guān)于構(gòu)造函數(shù)的說法正確的是( )
A. 方法名必須與類名相同
B. 使用new關(guān)鍵字創(chuàng)建對象時,java虛擬機會自動調(diào)用構(gòu)造函數(shù)
C. 我們在定義一個類時,必須要聲明至少一個構(gòu)造函數(shù)
D. 構(gòu)造函數(shù)中不能使用return語句
24. 編譯并運行以下代碼將發(fā)生什么?( )
class MyClass {
int x;
MyClass(int i) {
x = i;
}
public static void main(String args[]) {
MyClass m1 = new MyClass(100);
MyClass m2 = new MyClass(100);
if (m1.equals(m2)) {
System.out.println("Both are equal");
} else {
System.out.println("Both are not equal");
}
}
}
A. 代碼編譯時報出錯誤提示信息“equals() 方法未定義”
B. 編譯通過,拋出運行期異常.
C. 輸出Both are equal.
D. 輸出Both are not equal
25. 運行以下的main()方法,結(jié)果是?( )
1 public static void main(String[] args)
2 {
3 String myString;
4 int x = 100;
5
6 if (x < 100) myString = "x is less than 100";
7 if (x > 100) myString = "x is greater than 100";
8 System.out.println(myString.length());
9 }
A. 編譯時報出錯誤提示信息“變量myString沒有被初始化”
B. 編譯通過
C. 編譯未能通過。但如果變量myString在第8行前的代碼中被初始化,代碼可以編譯通過,運行時可以輸出字符串myString的長度
D. 以上都不對
26. 有如下代碼,請問哪些是正確的?()
class ClassA{}
class ClassB extends ClassA{}
class ClassC extends ClassA{}
以及
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.p1 = (ClassB)p3;
D.p2 = (ClassC)p4;
27. 關(guān)于繼承, 以下說法正確的是: ()
A.Java中只支持單繼承, 一個類只能繼承一個類, 但是可以有多個子類
B.一個類如果沒有自己寫無參構(gòu)造方法, 那么子類將無法繼承
C.子類可以當(dāng)父類用, 父類不可以當(dāng)子類用
D. 子類重寫父類方法時訪問權(quán)限不能更低
28. 編譯并運行以下代碼的輸出結(jié)果是?( )
String s1 = new String("amit");
System.out.println(s1.replace('m','r'));
System.out.println(s1);
String s3 = "arit";
String s4 = "arit";
String s2 = s1.replace('m','r');
System.out.println(s2 == s3);
System.out.println(s3 == s4);
A. arit
amit
false
true
B. arit
arit
false
true
C. amit
amit
false
true
D. arit
amit
true
true
29. 下列哪些代碼可以順利通過編譯和運行? ( )
A.Integer i = new Integer('A');
B.Integer i = new Integer("7");
C.Character c = new Character("A");
D.Boolean b = new Boolean(null);
E.Integer i = new Integer("0x10");
30. 在Java中,如果要在字符串類型對象s="java"中,得到字符 'v' 出現(xiàn)的位置,可使用下面的那個方法?( )
A. s.matches('v');
B. s.charAt('v');
C. s.indexOf('v');
D. s.substring('v');
31. 下列關(guān)于ArrayList、Vector和LinkedList集合的說法正確是有( )
A. ArrayList集合底層是數(shù)組實現(xiàn),該集合線程不安全
B. Vector 集合元素的存放是無序的
C. LinkedList集合底層是鏈表結(jié)構(gòu),適合做元素的增刪操作
D. 這三個集合都是List接口的實現(xiàn)類
32. 下面程序的輸出結(jié)果是什么( )
Set set= new HashSet();
set.add("aaa");
set.add("bbb");
set.add("aaa");
System.out.println(set.size());
A. 編譯不通過
B. 運行時出錯
C. 輸出3
D. 輸出2
33. 下列哪些方法是ArrayList和LinkedList集合中都定義的( )
A. add(Object o)
B. removeFirst()
C. remove(Object o)
D. add(int index,Object o)
34. 下列哪些集合屬于Collection體系的子類( )
A. TreeMap
B. ArrayList
C. Hashtable
D. HashSet
35. 下面有關(guān)Java異常處理的說法錯誤的是( )
A. 一個try塊只能有一條catch語句
B. 一個try塊中可以不使用catch語句
C. catch塊不能單獨使用,必須始終與try塊在一起
D. finally塊不能單獨使用,必須始終與try塊在一起
36. 下列關(guān)鍵字能和try語句一起使用的是( )
A. final
B. finalize
C. finally
D. catch
37. 下面程序的運行結(jié)果是( )
FileOutputStream fos = new FileOutputStream(“c:\\demo.txt”);
fos.write(“abc”);
fos.close();
A.在C盤創(chuàng)建文件demo.txt,但文件是空的
B.在C盤創(chuàng)建文件demo.txt,并寫入數(shù)據(jù)abc
C.將C盤已有的文件demo.txt中追加寫入abc
D.編譯失敗
38. 下列關(guān)于Java中文件輸入輸出的說法正確的是( )
A. 在Java中,文件的輸入輸出功能是通過流來實現(xiàn)的
B. 如果要把數(shù)據(jù)寫入到一個文件中,需要創(chuàng)建一個輸入流對象
C. 字符流在某些方面比如漢字的處理,比字節(jié)流更方便
D. 可以通過Reader r = new Reader("c:\\pet.txt")創(chuàng)建一個輸入流對象
39. 請看如下代碼:
BufferedReader br = new BufferedReader(new FileReader("c:\\a.txt"));
BufferedWriter bw = new BufferedWriter(new FileWriter("d:\\b.txt"));
String line = null;
while ((line = br.readLine()) != null) {
bw.write(line);
bw.newLine();
bw.flush();
}
bw.close();
br.close();
它表達(dá)的意思是?( )
A. 把c盤目錄下的a.txt文件內(nèi)容復(fù)制到d盤目錄下的b.txt
B. 把d盤目錄下的b.txt文件內(nèi)容復(fù)制到c盤目錄下的a.txt
C. 讀取c盤目錄下a.txt文件,輸出在控制臺
D. 把控制臺的內(nèi)容寫入到d盤目錄下的b.txt文件中
40. 關(guān)于泛型的說法正確的是()
A.泛型是JDK1.5出現(xiàn)的新特性
B.泛型是一種安全機制
C.使用泛型避免了強制類型轉(zhuǎn)換
D.使用泛型必須進(jìn)行強制類型轉(zhuǎn)換
41. 關(guān)于方法的遞歸算法,說法正確的是()
A.遞歸就是方法自己調(diào)用自己
B.遞歸的次數(shù)不能過大,否則會導(dǎo)致棧內(nèi)存溢出
C.使用遞歸算法,方法必須有返回值
D.構(gòu)造方法不可以使用遞歸算法
42. 下列哪個關(guān)鍵字可以用于實現(xiàn)同步?( )
A. native
B. static
C. synchronized
D. abstract
43. 下列哪些方法可以讓線程中斷? ( )
A. sleep
B. start
C. notify
D. wait
44. 啟動線程調(diào)用哪個方法? ( )
A. run()
B. start()
C. play()
D. go()
45. 在 awt 中,下列哪個組件可以實現(xiàn)帶標(biāo)題的窗口( )
A. Menu
B. Button
C. Frame
D. TextField
46. 編寫B(tài)utton組件的事件處理類時,需要實現(xiàn)哪個接口? ( )
A. ItemListener
B. ActionListener
C. ButtonListener
D. WindowListener
47. 下面哪項不是TCP的特點? ( )
A.面向連接
B.數(shù)據(jù)不可靠
C.傳輸速度慢
D.對數(shù)據(jù)大小無限制
48. TCP協(xié)議的服務(wù)器的Socket對象是下面哪一個類? ( )
A. Socket
B.InputStream
C.ServerSocket
D.OutputStream
49. 正則表達(dá)式中可以表示所有的單詞字符信息的是下面哪個規(guī)則:( )
A. \W
B. \w
C. [a-zA-Z]
D.[a-zA-Z_0-9]
50. 獲取Class類型的對象的三種方式是:( )
A. Object類的getClass()
B. class靜態(tài)屬性
C. 自己創(chuàng)建Class對象
D. Class類的forName()靜態(tài)方法
Java培訓(xùn)實戰(zhàn)教程之Tomcat的優(yōu)化經(jīng)驗
2016-01-28Java培訓(xùn)實戰(zhàn)教程之webblogic技術(shù)
2016-01-27Java培訓(xùn)實戰(zhàn)教程之深度解析java內(nèi)存中的原型
2016-01-27Java培訓(xùn)實戰(zhàn)教程之架構(gòu)企業(yè)云與微信 IT運維自動化
2016-01-26Java培訓(xùn)實戰(zhàn)教程之SQL SERVER函數(shù)
2016-01-26Java培訓(xùn)實戰(zhàn)教程之mysql優(yōu)化
2016-01-20