首頁 >Java >java教程 >最新總結的Java資深開發工程師面試考綱大全(收藏)

最新總結的Java資深開發工程師面試考綱大全(收藏)

php是最好的语言
php是最好的语言原創
2018-07-28 11:47:071643瀏覽

1、Java基礎

1.1 Collection和Map

(1)掌握Collection和Map的繼承系統。

(2)掌握ArrayList、LinkedList、Vector、Stack、PriorityQueue、HashSet、LinkedHashSet、TreeSet、HashMap、LinkedHashMap、TreeMap、WeakHashMap、EnumMap、TreeMap、HashTable的特性與實作原理。

(3)掌握CopyOnWriteArrayList、CopyOnWriteArraySet、ConcurrentHashMap的實作原理與適用場景。

1.2 IO

(1)掌握InputStream、OutputStream、Reader、Writer的繼承系統。

(2)掌握位元組流(FileInputStream、DataInputStream、BufferedInputStream、FileOutputSteam、DataOutputStream、BufferedOutputStream)和字元流(BufferedReader、InputStreamReader、FileReader、BufferedWriter、OutputStreamWriter、PrintReader、InputStreamReader、FileReader、BufferedWriter、OutputStreamWriter、PrintWriter、Writer、PrintWriter,並熟練使用riter。

(3)掌握NIO實作原理及使用方法。

1.3 異常

(1)掌握Throwable繼承系統。

(2)掌握異常運作原理。

(3)了解常見受檢異常(例如FileNotFoundException)、非受檢異常(例如NullPointerException)和錯誤(例如IOError)。

1.4 多執行緒

(1)掌握Executors可以創建的三種(JAVA8增加了一種,共四種)執行緒池的特性及適用範圍。

(2)掌握多執行緒同步機制,並熟練運用。

1.5 Socket

(1)掌握Socket通訊原理。

(2)熟練使用多執行緒結合Socket進行程式設計。

2、Java虛擬機器

2.1 JVM記憶體區域分割

(1)掌握程式計數器、堆疊、虛擬機棧、本機方法堆疊、方法區(JAVA8已移除)、元空間(JAVA8新增)的功能及基本原理。

(2)掌握堆的劃分:新生代(Eden、Survivor1、Survivor2)和老年代的角色及工作原理。

(3)掌握JVM記憶體參數設定及調優。

2.2 類別載入

(1)掌握類別的載入階段:載入、連結(驗證、準備、解析)、初始化、使用、卸載。

(2)掌握類別載入器分類及其應用:啟動類別載入器、擴充類別載入器、應用程式類別載入器、自訂載入器。

3、J2EE

(1) 掌握JSP內建物件、動作及相關特點和工作原理。

(2) 掌握Servlet的特點和運作原理。

(3) 掌握Spring框架的IOC和AOP實作原理(反射和動態代理)。

(4) 至少掌握一個MVC框架(Spring MVC,Struts等)的工作原理,並且熟練運用。

(5) 至少掌握一個ORM框架(Hibernate,MyBatis等)的工作原理,並且熟練運用。

4、資料結構與演算法

(1)掌握線性表的特性並熟練運用。

(2)掌握常用排序與找出演算法:

    ①插入排序(直接插入排序、希爾排序)、

    ②選擇排序(直接選擇排序、堆排序)、

    ③交換排序(冒泡排序、快速排序)、

    ④歸併排序,

    ⑤順序查找、

    ⑥二分查找、

    ⑦哈希查找。

(3) 熟練運用常見排序和找出演算法想法解決程式設計問題。

(4)了解幾大基本演算法:貪心演算法分治策略動態規劃

5、電腦網路

(1)掌握網路的分層結構,及每層的功能特性。

(2)掌握TCP/IP的通訊原理(三次握手、四次揮手)

#6、資料庫

(1)掌握複雜的SQL語句編寫。

(2)掌握資料庫的最佳化(SQL層面和表格設計層面)。

(3)至少掌握一款資料庫產品。

(4)熟悉高並發、大數據情況下的資料庫開發。

7、Web技術

(1)掌握AJAX的工作原理。

(2)至少熟悉一款JS框架(例如JQuery)。

8、設計模式

(1)熟悉常見的設計模式。

(2)會將設計模式理論應用到實際開發中。

9、Linux

(1)熟練運用Linux共同指令。

(2)熟悉Linux作業系統基本概念及特點。

(3)熟悉Shell腳本。

10、作業系統

(1)掌握作業系統的處理管理。

(2)了解作業系統的I/O。

11、正規表示式

(1)掌握常見正規表示式符號。

(2)熟練運用正規表示式解決實際問題(例如符合電話號碼、郵件信箱、網域名稱等)。

相關文章:

8個Java資深開發工程師的面試摘要

Java高階軟體工程師面試考綱

相關影片:

js高階物件導向和元件開發影片教學

以上是最新總結的Java資深開發工程師面試考綱大全(收藏)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn