Java知识点仓库,涵盖Java各方面的知识,主要会将Java分为三个层次进行介绍:
Java基础(base):包括一些通用语言基础、常用类、面向对象基础、Java语言基础、异常等。Java进阶(advanced):一些Java特性,如Java反射、Java注解、JavaIO、多线程基础、JDBC、Java日志、Java网络编程、JCF等Java高级(hard):包括JVM、类加载、字节码工程、JUC、手撕一些JDK源代码等。
另外除了这些之外,还会收录制作JavaEE技术相关的内容!
部分内容可能已经不适合当前时代,出于Respect或者更好的解释现代化技术,还是会简单介绍一下,这部分内容会再分支章节中的README做标记,如果急,很急,可以先跳过这部分内容。
喜欢的给个⭐吧o( ̄▽ ̄)ブ。
所有的技术都会以分支的形式进行命名,格式为序号-层次-技术点,如:1-advanced-reflect代表是Java进阶反射技术,可以打开相对应的分支进行学习。
一般一个分支会包括一个README.md和一个或者多个DEMO,README.md用于辅助Demo和知识点的讲解,Demo为maven项目。
项目一个知识点一个分支的方式进行管理,在编写的时候采用idea多模块的方式,如果单单下载某个分支的Demo,可能需要修改一下pom文件,具体你可以在这里找到各个pom文件,替换掉从分支下载的Demo内自带的pom文件即可运行(由于工作量巨大暂时关闭)
如需要发pull request,请遵循下面两点即可。
- 务必保证您的
demo和README.md处在这样的文件结构。
- 确保一个大分类知识点一个
branch,如JDBC就可以作为单独一个分支、反射技术亦是如此,具体的知识点分类在下面。
若坑已填,则会出现对应的分支在知识点后面,尽量保证每个知识点之间没有太多关联。(*/ω\*)
其中带序号的就是大方向的知识点,序号内不带序号的就是该知识点现阶段的具体内容。
-
1-入门上手
-
JDK安装 - 第一个程序
-
-
2-通用语言基础
- 基本数据类型、类型转换
- 语句
- 运算符VS表达式
- 数组
-
3-面向对象基础
- 类
- 对象
- OOP特性
-
4-面向对象在
Java中应用- 方法权限级别
- 类的声明
- 方法的声明
- 字段声明
- 对象创建
- 继承
-
5-面向对象在
Java中应用(高阶)- 内部类
- 静态内部类
- 普通内部类
- 内部类原理
- 匿名类
- 静态代码块
- 构造代码块
- 接口
- 抽象类
- 内部类
-
6-关键字(复习)
- final
- static
- new
- this
- super
-
7-包概念
-
package -
import -
classpath
-
-
8-常用工具类
- 数学处理:
RandomUtil、UUIDUtil - 包装器类
- 字符串处理
- 时间类(旧
API) - 格式化类
- 数学处理:
-
9-
Java异常:10-java-base-exception-
2022.7.28更新:Java不支持创建泛型异常
-
-
10-
Java泛型使用 -
11-
Java注解使用 -
12-
Java集合容器(JCF)- Guava
- Eclipse-Collections
-
13-
Java随机文件读写 -
14-第一第二代图形化(
AWT、Swing)- AWT组件库:2023.1.8、2023.1.9、2023.1.10、2023.1.12、2023.1.15
------------------------------------------ 基础知识点完毕 --------------------------------------------
-
1-
Java反射技术- 反射简介来源
-
JDK版本迭代中的反射API-
Class:2023.1.30 -
Field -
Array -
Method
-
- 反射应用场景
-
2-
Java泛型原理补充- 类型擦除
-
Java泛型注意事项
-
3-
Java注解高阶- 如何声明注解
- 元注解
- 注解处理器
- 注解实现原理
-
4-
Java内置设计模式实现- 动态代理模式:2023.1.21
- 观察者模式:2023.1.20
-
5-
Java-IO-
Java-IO家族及应用-
AudioInputStream: unknown -
BufferedInputStream: unknown -
BufferedOutputStream: 2023.1.25 -
ByteArrayInputStream:unknown -
ByteArrayOutputStream: 2023.1.21、2023.1.22 -
checkedInputStream: unknown -
CipherInputStream: 2023.1.12 -
CipherOutputStream: 2023.1.12 -
DataInputStream: 2023.1.13 -
DataOutputStream: 2023.1.13 -
DigestInputStream: 2023.1.16、2023.1.17 -
DigestOutputStream: 2023.1.16、2023.1.17 -
GZipInputStream: 2023.1.18 -
GZipOutputStream: 2023.1.18
-
- 字节流字符流转换
- 序列化VS反序列化
- IO工具类 2023.1.6、2023.1.7
-
-
6-
Java语法糖及常见接口- 实现
foreach循环 - 实现
try...with...resources - 实现对象拷贝
- 浅拷贝
- 深拷贝
- 实现对象比较
- Comparable
- Comparator
- 实现
-
7-
Java多线程基础- 线程创建
- 并发
concurrent包
-
8-
Java文件操作- 基础文件操作(创建文件、创建目录等等):2023.1.25
-
XML:2023.1.25、2023.2.2 -
PDF、Word、md、json、二维码等文件处理 - 文件系统
-
9-
Java高阶图形化介绍-
JavaFX -
SWT
-
-
10-
Java Stream -
11-
JDBC-
java.sql.*-
OracleJDBC连接 -
MySqlJDBC连接 -
JDBC-MetaData
-
-
javax.sql.*(连接池)-
C3P0DataSource -
DruidDataSource -
hikariCPDataSource -
MySqlDataSource
-
-
light ORM Framework-
dbUtils-
SimpleDemo:2023.1.15 -
handlers
-
-
spring-jdbc-
JdbcTemplate
-
-
-
-
12-
Java网络编程-
BIO -
NIO -
AIO -
HTTPClient -
netty
-
-
13-函数式编程
-
lambda -
function包
-
-
14-时间
API -
15-国际化编程
-
16-模块化编程
-
17-日志框架
-
18-编译器、脚本
API -
19-
JNI -
20-平台安全
-
21-媒体图像处理
-
22-
RMI
-
2023.02.03 - 添加获取节点Demo
-
2023.02.03 - 更新XML笔记
- 2023.02.02 - 更新XML笔记
- 2023.01.30 - 更新反射API笔记
-
2023.01.25 - 梳理Dom API
-
2023.01.25 - 创建XML解析Demo模块
-
2023.01.25 - 随机数工具类添加randomAlphabet()、randomAlphabetNumber()、randomSingleDigit()方法
-
2023.01.25 - 更新BufferedOutputStreamDemo的基本使用。
- 2023.01.22 - 更新ByteArrayOutputStream的Size()、Reset()、toXXX()等
-
2023.01.21 - 更新JDK动态代理模式实现
-
2023.01.21 - 更新ByteArrayOutputStream基本Write功能
- 2023.01.20 - 更新JDK观察者模式实现
- 2023.01.18 - 更新GZipInputStreamDemo和GZipOutputStreamDemo
-
2023.01.17 - 分类好外部资源,防止混乱
-
2023.01.17 - 重写DigestInputStreamDemo和DigestOutputStreamDemo,模拟文件校验过程
-
2023.01.17 - 修改资源文件路径
- 2023.01.16 - 更新DigestInputStream和DigestOutputStream的Demo
-
2023.01.15 - 更新JDBC笔记
-
2023.01.15 - 重写JDBC知识点体系
-
2023.01.15 - 添加dbUtils笔记
-
2023.01.15 - 更新AWT笔记
-
2023.01.15 - 解决dbUtils框架Bean无法映射的问题
- 2023.01.12 - 添加AWT常用组件说明
-
2023.01.10 - 更新AWT组件笔记
-
2023.01.10 - 整理AWT知识点分类
- 2023.01.07 - 更新AWT
-
2023.01.06 - 更新AWT
-
2023.01.06 - IO工具类
