7. ArrayList、LinkedList、Vector的區別。
8. String、StringBuffer與StringBuilder的區別。
9. Map、Set、List、Queue、Stack的特點與用法。
11. HashMap和ConcurrentHashMap的區別,HashMap的底層源碼。
12. TreeMap、HashMap、LindedHashMap的區別。
13. Collection包結構,與Collections的區別。
14. try catch finally,try裏有return,finally還執行麼?
15. Excption與Error包結構。OOM你遇到過哪些情況,SOF你遇到過哪些情況。
19. Static class 與non static class的區別。
21. 實現多線程的兩種方法:Thread與Runable。
22. 線程同步的方法:sychronized、lock、reentrantLock等。
27. Concurrent包裏的其他東西:ArrayBlockingQueue、CountDownLatch等等。
29.foreach與正常for循環效率對比。 總體foreach效率會高一些,但for比較靈活。
- 泛型常用特點,List能否轉爲List。
弱類型語言無類型,高級語言有類型,每個類型有自己的方法,這裏就說java,java基本數據類型有8中,對應的包裝類也是有方法的,比如int對應的Integer,按你說的統一就Object類型,那麼每個類型都有自己的方法,你都用Object方法要怎麼用?你可以如果我要用String,那麼我就把Object轉換爲String,可是往往寫代碼的時候,你還不知道未來那個數據是什麼類型,這種情況也是有的,再說泛型,泛型這個東西簡單來說就是在編譯期間確定類型,這樣IDE可以幫你檢查類型,舉例一個集合List,這裏以前是可以裝任何Object的,有了泛型以後,我們可以這樣List意思說這裏的集合我只能裝字符串類型,否則編譯時就過不去,這樣的好處是你內心知道這裏只是字符串,未來在從集合中獲取一個對象時,直接就可以用字符串的方法,而不是拿出Object在轉換,並且如果只是單純的List集合,你如何確定代碼裝入集合中的對象就一定是字符串,倘若很複雜的代碼,裏面不小心裝入的Integer對象,也很難檢測,恐怕只有運行報錯的時候你才知道,最後要說泛型只存在於編譯期間,編譯過後泛型擦除!
33. 解析XML的幾種方式的原理與特點:DOM、SAX、PULL。