找工作要面試,有面試就有對付面試的辦法。以下一些題目來自我和我朋友痛苦的面試經歷,提這些問題的公司包括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。
第八,gc是什麼?為什麼要有gc?
基礎
第九,string s = new string("xyz");建立了幾個string object?
第十,d(11.5)等於多少? d(-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。
如果你這個答不出來,面試的人會認為你沒有實際程式設計經驗。