簡答題
1、list,map,set三個介面,存取元素時,各有什麼特點。
List 以特定次序來持有元素,可有重複元素。
Set 無法擁有重複元素,內部排序。
Map 儲存key-value值,value可多值。
---------------------------
2、sleep()和wait()的區別。
① 這兩個方法來自不同的類分別是,sleep來自Thread類,和wait來自Object類。
sleep是Thread的靜態類方法,誰呼叫的誰去睡覺,即使在a執行緒裡呼叫b的sleep方法,實際上還是a去睡覺,要讓b執行緒睡覺要在b的程式碼中呼叫sleep。
② 鎖: 最主要是sleep方法沒有釋放鎖,而wait方法釋放了鎖,使得其他執行緒可以使用同步控制塊或者方法。
sleep不出讓系統資源;wait是進入執行緒等待池等待,出讓系統資源,其他執行緒可以佔用CPU。一般wait不會加時間限制,因為如果wait執行緒的執行資源不夠,再出來也沒用,要等待其他執行緒呼叫notify/notifyAll喚醒等待池中的所有執行緒,才會進入就緒佇列等待OS分配系統資源。sleep(milliseconds)可以用時間指定使它自動喚醒過來,如果時間不到只能呼叫interrupt()強行打斷。
Thread.sleep(0)的作用是“觸發作業系統立刻重新進行一次CPU競爭”。
③ 使用範圍:wait,notify和notifyAll只能在同步控制方法或者同步控制塊裡面使用,而sleep可以在任何地方使用。
synchronized(x){
x.notify()
//或者wait()
}
----------------------------------------------------------
3、什麼是內部類,static nested class和inner class有什麼不同。
4、java中的多型機制時什麼。
5、一般異常和執行時異常有什麼區別。
6、什麼是java序列化,如何實現java序列化。
程式設計題
1、設計4個執行緒,其中兩個執行緒每次對j(試卷上是sum,百度上是j)增加1,另外兩個執行緒每次對j減少1。
2、設計一個程式,實現兩個長整形資料的相加,並且當它們超過整形範圍時的型別轉換。
程式改錯題
1、面試寶典上java程式碼改錯模組第8題,應該在51頁。
2、面試寶典上java程式碼改錯模組第11題,51、52頁。
還有個智力題和一篇英語完型填空。若干選擇題,不難,java相關的。
智力題好像是這樣的,123456789這九個數重複50次,一共450位數,刪掉其中的奇數位,得到一個新的數,再刪掉奇數位,如此迴圈最後剩下的一個數是什麼
面試只問你做過什麼專案,挑一個詳細講下,知識點不怎麼問,最多從你簡歷上找兩個
施海寧以前發給我們一個面試寶典文件,這些題基本上都是上面的
面試不跟你談薪資,面試了之後hr跟你談的
4500就好
不要報太低
面試技術不問你簡歷之外的
我們這邊不是做java web,這方面懂得人也不多,就問些基礎的
面試我的時候讓我把專案說一遍,又隨便挑了個簡歷上寫的知識點就沒了
主要還是介紹專案