天天看點

Java 面試常見問題!

Java基礎方面:

1,作用域public,protected,private,以及不寫時的差別

2,ArrayList和Vector的差別,HashMap和Hashtable的差別

3,char型變量能不能定義為一個中文?為什麼?

4,多線程有幾種表示方法,都是什麼?同步有幾種實作方法,都是什麼?

5,繼承時候類的執行順序問題,一般都是選擇題,問你将會列印出什麼?

6,内部類的實作方式?

7,垃圾回收機制,如何優化程式?

8,float型float f=3.4是否正确?

Jsp方面

1,jsp有哪些内置對象?作用分别是什麼?

2,jsp有哪些動作?作用分别是什麼?

3,include的兩種實作方式的差別?

4,兩種跳轉方式分别是什麼?有什麼差別?

Servlet方面

1,說一說Servlet的生命周期?

2,Servlet版本間(忘了問的是哪兩個版本了)的不同?

Jdbc,Jdo方面

1,可能會讓你寫一段Jdbc連Oracle的程式.

2,Class.forName的作用?為什麼要用?

3,Jdo是什麼?

Xml方面

1,xml有哪些解析技術?差別是什麼?

2,你在項目中用到了xml技術的哪些方面?如何實作的?

3,用jdom解析xml檔案時如何解決中文問題?如何解析?

EJB方面

1,EJB2.0有哪些内容?分别用在什麼場合? EJB2.0和EJB1.1的差別?

MVC方面

1,MVC的各個部分都有那些技術來實作?如何實作?

設計模式方面:

1,開發中都用到了那些設計模式?用在什麼場合?

JavaScript方面

      1,如何校驗數字型?

CORBA

      1,CORBA是什麼?用途是什麼?

以上就是我的總結,可能不是全部,因為時間問題,如果能夠記起來,我會再加上,有些問題描述的可能不準确,希望大家批評指正,問題都很基礎,即使不知道,花上一點時間查找(csdn/java版)就能弄懂,希望對正在找工作的朋友有所幫助,有所提醒.一份正确率很高的筆試卷可能會為你的面試減輕負擔,少問不少問題.

當然我還是要提醒從

Java陷阱一籮筐----面試題集

找工作要面試,有面試就有對付面試的辦法。以下一些題目來自我和我朋友痛苦的面試經曆,提這些問題的公司包括IBM, E*Trade, Siebel, Motorola, SUN, 以及其它大小公司。

面試是沒什麼道理可講的,它的題目有的不合情理、脫離實際。有在紙上寫的,有當面考你的,也有在電話裡問的,給你IDE的估計很少(否則你趕快去買彩票, 說不定中)。是以如果你看完此文後,請不要抱怨說這些問題都能用IDE來解決。你必須在任何情況下準确回答這些問題,在面試中如果出現一兩題回答不準确很 有可能你就被拒之門外了。

當然這些都是Java的基本題,那些面試的人大多數不會問你Hibernate有多先進,Eclipse的三個組成部分,或command design pattern,他們都是老一輩了,最喜歡問的就是基礎知識。别小看了這些基礎,我朋友水準一流,結果就栽在一到基礎知識的問題下,和高薪無緣。

好了廢話少說,開始正題。

第一,談談final, finally, finalize的差別。

最常被問到。

第二,Anonymous Inner Class (匿名内部類) 是否可以extends(繼承)其它類,是否可以implements(實作)interface(接口)?

第三,Static Nested Class 和 Inner Class的不同,說得越多越好(面試題有的很籠統)。

第四,&和&&的差別。

這個問得很少。

第五,HashMap和Hashtable的差別。

常問。

第六,Collection 和 Collections的差別。

你千萬别說一個是單數一個是複數。

第七,什麼時候用assert。

API級的技術人員有可能會問這個。

第八,GC是什麼? 為什麼要有GC?

基礎。

第九,String s = new String("xyz");建立了幾個String Object?

第十,Math.round(11.5)等於多少? Math.round(-11.5)等於多少?

第十一,short s1 = 1; s1 = s1 + 1;有什麼錯? short s1 = 1; s1 += 1;有什麼錯?

面試題都是很變态的,要做好受虐的準備。

第十二,sleep() 和 wait() 有什麼差別?

搞線程的最愛。

第十三,Java有沒有goto?

很十三的問題,如果哪個面試的問到這個問題,我勸你還是别進這家公司。

第十四,數組有沒有length()這個方法? String有沒有length()這個方法?

第十五,Overload和Override的差別。Overloaded的方法是否可以改變傳回值的類型?

常問。

第十六,Set裡的元素是不能重複的,那麼用什麼方法來區分重複與否呢? 是用==還是equals()? 它們有何差別?

第十七,給我一個你最常見到的runtime exception。

如果你這個答不出來,面試的人會認為你沒有實際程式設計經驗。

第十八,error和exception有什麼差別?

第十九,List, Set, Map是否繼承自Collection接口?

第二十,abstract class和interface有什麼差別?

常問。

第二十一,abstract的method是否可同時是static,是否可同時是native,是否可同時是synchronized?

第二十二,接口是否可繼承接口? 抽象類是否可實作(implements)接口? 抽象類是否可繼承實體類(concrete class)?

第二十三,啟動一個線程是用run()還是start()?

第二十四,構造器Constructor是否可被override?

第二十五,是否可以繼承String類?

第二十六,當一個線程進入一個對象的一個synchronized方法後,其它線程是否可進入此對象的其它方法?

第二十七,try {}裡有一個return語句,那麼緊跟在這個try後的finally {}裡的code會不會被執行,什麼時候被執行,在return前還是後?

第二十八,程式設計題: 用最有效率的方法算出2乘以8等於幾?

有C背景的程式員特别喜歡問這種問題。

第二十九,兩個對象值相同(x.equals(y) == true),但卻可有不同的hash code,這句話對不對?

第三十,當一個對象被當作參數傳遞到一個方法後,此方法可改變這個對象的屬性,并可傳回變化後的結果,那麼這裡到底是值傳遞還是引用傳遞?

第三十一,swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?

第三十二,程式設計題: 寫一個Singleton出來。

好先說這麼一些。