网易杭研 java 校招_09网易杭研校园招聘面试题
首先是JAVA題:
1、HashMap和TreeMap的區(qū)別
HashMap:底層用散列表實現,元素存儲是無序的。
TreeMap:底層用紅黑樹實現,元素存儲是有序的。
2、wait()和notify()如何用
wait():如果對象調用了wait方法,那么持有該對象的線程會把該對象的控制權交出去,然后處于等待狀態(tài)。
notify():如果對象調用了notify()方法就會通知某個正在等待該對象的控制權的線程可以繼續(xù)運行,但必須等待當前線程執(zhí)行完sychronized中的代碼塊。
notifyAll():如果對象調用了notifyAll()方法就會通知所有正在等待該對象的控制權的線程可以繼續(xù)運行,但必須等待當前線程執(zhí)行完sychronized中的代碼塊。
3、異常分哪兩類,自定義異常屬于哪一類
分為Error和Exception。自定義異常屬于Exception。
4、IO類所用到的設計模式
主要是裝飾模式和適配器模式。
5、如何將文本中讀取的數值型字符串轉成數值型,如何進行串行化
兩種方法:1、直接使用jdk的api,Integer.parseInt("12345");2、從右往左讀取字符串的每一個字符c,如果是從右到左第i個,則r=r+(c-'0')*10^i,最后r即是結果。
串行化即對象的序列化。之所以要進行序列化,是為了將對象轉換為二進制串,可以將對象進行網絡傳輸和文件讀寫,達到對象持久化的目的。
串行化的方法:1、將對象實現序列化接口Serializable;2、用ObjectInputStream和ObjectOutputStream的輸入輸出流類對該對象進行讀寫。
6、transient有什么用
1)一旦變量被transient修飾,變量將不再是對象持久化的一部分,該變量內容在序列化后無法獲得訪問。
2)transient關鍵字只能修飾變量,而不能修飾方法和類。注意,本地變量是不能被transient關鍵字修飾的。變量如果是用戶自定義類變量,則該類需要實現Serializable接口。
3)被transient關鍵字修飾的變量不再能被序列化,一個靜態(tài)變量不管是否被transient修飾,均不能被序列化。
7、反射機制懂不懂
所謂的反射,是指java運行時,對于任何一個類,都能獲得類信息(屬性和方法),對于任何一個對象,都可動態(tài)地調用該對象的方法。這種動態(tài)獲取類信息以及動態(tài)調用對象方法的機制叫做反射。
然后是數據庫題:
8、優(yōu)化查詢,索引建立在聯合查詢的哪張表上比較好
優(yōu)化查詢:1、sql語句優(yōu)化;2、建立索引。
第二個問題不知道。。。
9、數據庫的隔離級別有哪些,各自加什么鎖,解決了什么問題,沒解決什么問題。
數據庫隔離級別:Read uncommited、Read commited、Repeatable read、Serializable
分別解決的問題依次為:臟讀、不可重復讀、幻讀。
最后是項目考察:
1、WebWork的攔截器中的scope有哪幾種,Action是否線程安全?
第一個問題略,沒接觸過webwork,所以也不知道它的攔截器的scope相關的知識。Action是線程不安全的。
2、懂不懂Spring?
略懂IOC和Spring。。
總結
以上是生活随笔為你收集整理的网易杭研 java 校招_09网易杭研校园招聘面试题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spark-sql-perf
- 下一篇: QGraphicsItem绘制重叠区域