java基礎面試
1 java基本數據類型
整數型byte(2^7)1個字節,short(2^15)兩個字節,int(2^31)四個字節,long(2^63)八字節,浮點型 double,float,布爾類型 boolean,字符類型char
2 java中的集合
List :有序,可重複
set :無序,不可重複
map :key,value格式,key爲set集合,不可重複,value可以重複
3 ArrayList和LinkedList區別。
ArrayList是數組,ArrayList查詢比較快,新增刪除慢。新增刪除,對應位置之後的數據都要挪動。ArrayList本身就有位置標號。
LinkedList是鏈表LinkedList查詢慢,但是新增刪除快。LinkedList新增刪除直接增加或者刪除數據就可以,挪動數據較少。但是查詢時候因爲順序關係都是隱式的,需要全部查找。
4 創建線程的方式
實現runnable接口
繼承Thread類
使用 Executor 框架
5 HashMap和HashTable的區別
HasnMap允許空的value值,HashTable不允許
HashMap 繼承自 AbstractMap,Hashtable 繼承自 Dictionary 類,兩者都實現了 Map 接口; HashMap 的方法不是同步的,Hashtable 的方法是同步的。
6 spring和spring Mvc的區別
spring是一個ioc,aop框架。spring mvc實在spring的基礎上集成度web框架,使用spring mvc 必須依賴spring
7 重寫和重載的區別
重寫:子類重寫父類方法,方法名,參數保持一致,返回值範圍小於父類的方法,父類方法如果是私有的,則不可重寫。
重載:在一個類中發生對一個同名方法,有多重實現,參數不一致,根據不同的傳入參數調用不同的方法。
8 ==和equals的區別
==比較的是否是同一個對象,同時比較內容和位置。equals比較內容是否相同。
9 String StringBuffer StringBuilder區別
他們都被finally修飾,不可被繼承
string長度固定,定義好之後,不會改變,StringBuilder和StringBuffer長度可變。
StringBuffer是線程安全的,StringBuilder線程不安全
StringBuffer因爲加了synchronized,所以性能上低於StringBuilder
10 java中的多態
多態主要表現方式有重寫和重載,重寫是子類繼承父類,重寫父類的方法。重載是同名方法多個實現,返回值,傳入參數不同。
11 java中的異常處理關鍵字
try,catch,throw,throws,finally
throws用於方法主體拋出異常,throw方法內部拋出異常,finally方法內部,是否出現異常都需要處理的步驟
12 get和post的區別
他們都是通過http請求來提交參數。
get的參數會顯示在地址欄,用問號拼接起來的,post是放在http的包中。所以get提交參數時候安全性不高。此外瀏覽器對輸入url長度有限制,post數據存放在包中不會因此受限制。