Java工程師成神之路 | 2020正式版


主要版本 更新時間 備注
v3.0 2020-03-31 知識體系完善,在v2.0的基礎上,新增20%左右的知識點
調整部分知識的順序及結構,方便閱讀和理解
通過GitHub Page搭建,便於閱讀
v2.0 2019-02-19 結構調整,更適合從入門到精通;
進一步完善知識體系;
新技術補充;
v1.1 2018-03-12 增加新技術知識、完善知識體系
v1.0 2015-08-01 首次發布

GitHub 項目地址:進入

GitHub Pages 完整閱讀:進入

Gitee Pages 完整閱讀:進入 (國內訪問速度較快)

基礎篇

面向對象

什么是面向對象

面向對象與面向過程

面向對象的三大基本特征

面向對象的五大基本原則

封裝、繼承、多態

什么是多態

方法重寫與重載

Java的繼承與實現

Java的繼承與組合

構造函數與默認構造函數

類變量、成員變量和局部變量

成員變量和方法作用域

平台無關性

Java如何實現的平台無關性的

JVM還支持哪些語言

值傳遞

值傳遞、引用傳遞

為什么說Java中只有值傳遞

Java基礎知識

基本數據類型

8種基本數據類型

整型中byte、short、int、long的取值范圍

什么是浮點型?

什么是單精度和雙精度?

為什么不能用浮點型表示金額?

自動拆裝箱

自動拆裝箱

Integer的緩存機制

如何正確定義接口的返回值(boolean/Boolean)類型及命名(success/Success)

String

字符串的不可變性

String的長度限制

JDK 6和JDK 7中substring的原理及區別

replaceFirst、replaceAll、replace區別

String、StringBuilder和StingBuffer之間的區別與聯系

String對“+”的重載

字符串拼接的幾種方式和區別

String.valueOf和Integer.toString的區別

switch對String的支持

字符串池

常量池(運行時常量池、Class常量池)

intern

Java中各種關鍵字

transient

instanceof

volatile

synchronized

final

static

const

集合類

Collection和Collections的區別

常用集合類的使用

Set和List區別

ArrayList和LinkedList和Vector的區別

SynchronizedList和Vector的區別

Set如何保證元素不重復

HashMap、HashTable、ConcurrentHashMap區別

Java 8中Map相關的紅黑樹的引用背景、原理等

HashMap的容量、擴容、hash等原理

Java 8中stream相關用法

Apache集合處理工具類的使用

不同版本的JDK中HashMap的實現的區別以及原因

Arrays.asList獲得的List使用時需要注意什么

Collection如何迭代

Enumeration和Iterator區別

如何在遍歷的同時刪除ArrayList中的元素

fail-fast 和 fail-safe

CopyOnWriteArrayList

ConcurrentSkipListMap

枚舉

枚舉的用法

枚舉的實現

枚舉與單例

Enum類

Java枚舉如何比較

switch對枚舉的支持

枚舉的序列化如何實現

枚舉的線程安全性問題

IO

字符流、字節流

輸入流、輸出流

字節流和字符流之間的相互轉換

同步、異步

阻塞、非阻塞

Linux 5種IO模型

BIO、NIO和AIO的區別

三種IO的用法與原理

netty

反射

什么是反射

反射有什么作用

Class類

java.lang.reflect.*

動態代理

靜態代理

動態代理

動態代理和反射的關系

動態代理的幾種實現方式

AOP

序列化

什么是序列化與反序列化

Java如何實現序列化與反序列化

Serializable 和 Externalizable 有何不同

為什么需要序列化

serialVersionUID

為什么serialVersionUID不能隨便改

transient

序列化底層原理

序列化如何破壞單例模式

protobuf

為什么說序列化並不安全

注解

元注解

自定義注解

Java中常用注解使用

注解與反射的結合

如何自定義一個注解?

Spring常用注解

泛型

什么是泛型

類型擦除

泛型帶來的問題

泛型中K T V E ? object等的含義

泛型各種用法

限定通配符和非限定通配符

上下界限定符extends 和 super

List


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM