1、java事件機制包括哪三個部分?分别介紹。
2、為什麼要使用線程池?
3、線程池有什麼作用?
4、說說幾種常見的線程池及使用場景。
5、線程池都有哪幾種工作隊列?
6、怎麼了解無界隊列和有界隊列?
7、線程池中的幾種重要的參數及流程說明。
8、什麼是反射機制?
9、說說反射機制的作用。
10、反射機制會不會有性能問題?
11、你怎麼了解http協定?
12、說說http協定的工作流程。
13、http有哪些請求送出方式?
14、http中的200,302,403,404,500,503都代表什麼狀态?
15、http get和post有什麼差別?
16、你怎麼了解cookie和session,有哪些不同點?
17、什麼是web緩存?有什麼優點?
18、什麼是https,說說https的工作原理?
19、什麼是http代理伺服器,有什麼用?
20、什麼是虛拟主機及實作原理?
21、什麼是Java虛拟機,為什麼要使用?
22、說說Java虛拟機的生命周期及體系結構。
23、說一說Java記憶體區域。
24、什麼是分布式系統?
25、分布式系統你會考慮哪些方面?
26、講一講TCP協定的三次握手和四次揮手流程。
27、為什麼TCP建立連接配接協定是三次握手,而關閉連接配接卻是四次握手呢?為什麼不能用兩次握手進行連接配接?
28、為什麼TCP TIME_WAIT狀态還需要等2MSL後才能傳回到CLOSED狀态?
29、什麼是DoS、DDoS、DRDoS攻擊?如何防禦?
30、描述一下Java異常層次結構。
31、什麼是檢查異常,不受檢查異常,運作時異常?并分别舉例說明。
32、finally塊一定會執行嗎?
33、正常情況下,當在try塊或catch塊中遇到return語句時,finally語句塊在方法傳回之前還是之後被執行?
34、try、catch、finally語句塊的執行順序。
35、Java虛拟機中,資料類型可以分為哪幾類?
36、怎麼了解棧、堆?堆中存什麼?棧中存什麼?
37、為什麼要把堆和棧區分出來呢?棧中不是也可以存儲資料嗎?
38、在Java中,什麼是是棧的起始點,同是也是程式的起始點?
39、為什麼不把基本類型放堆中呢?
40、Java中的參數傳遞時傳值呢?還是傳引用?
41、Java中有沒有指針的概念?
42、Java中,棧的大小通過什麼參數來設定?
43、一個空Object對象的占多大空間?
44、對象引用類型分為哪幾類?
45、講一講垃圾回收算法。
46、如何解決記憶體碎片的問題?
47、如何解決同時存在的對象建立和對象回收問題?
48、講一講記憶體分代及生命周期。
49、什麼情況下觸發垃圾回收?
50、如何選擇合适的垃圾收集算法?
51、JVM中最大堆大小有沒有限制?
52、堆大小通過什麼參數設定?
53、JVM有哪三種垃圾回收器?
54、吞吐量優先選擇什麼垃圾回收器?響應時間優先呢?
55、如何進行JVM調優?有哪些方法?
56、如何了解記憶體洩漏問題?有哪些情況會導緻記憶體洩露?如何解決?
57、從分布式系統部署角度考慮,分哪幾層?
58、如何解決業務層的資料通路問題?
59、為了解決資料庫伺服器的負擔,如何做資料庫的分布?
60、什麼是著名的拜占庭将軍問題?
61、為什麼說TCP/IP協定是不可靠的?
62、講講CAP理念。
63、怎麼了解強一緻性、單調一緻性和最終一緻性?
64、分布式系統設計你會考慮哪些政策?
65、最常見的資料分布方式是什麼?
66、談一談一緻性雜湊演算法。
67、paxos是什麼?
68、什麼是Lease機制?
69、如何了解選主算法?
70、OSI有哪七層模型?TCP/IP是哪四層模型。