java 学习路线
来源:互联网 发布:财务管理网络课程 编辑:程序博客网 时间:2024/06/07 01:55
学习路线
Java基础
推荐书籍:《Java编程思想》, 《java核心技术》
Object
有哪些常用方法?
clone 浅拷贝、深拷贝的区别?
equals 子类重写equals方法,为什么要重写, 和==的区别?
toString 、hashCode
基础类型、包装类型有哪些类型,占用几个字节?有什么区别?
String、StringBuilder、StringBuffer
有什么区别?为什么String不可变?
final class
Collection
有哪些常用的集合对象;List、Set、Map适用场景
数据是怎么存储的
有序集合和无序集合
如何排序
IO流
字节流、字符流
java IO: 装饰器模式的使用
接口和抽象类
使用场景/区别
继承和实现
作用域
private
默认
protected
public
关键字
try catch finally
finally和return的执行顺序
static
static 和 非static有什么区别
final
加final修饰的类、属性、方法,有什么不同
编码规范
- Java代码规范
Java进阶
Java并发
推荐书籍:《JAVA并发编程实战》
线程安全、同步
synchronized
Lock
volatile
保证数据的可见性,不能防止并发竞争
ThreadLocal
解决线程安全问题,非同步
以上所列的使用场景, 能解决什么问题
并发
CyclicBarrier(栅栏)、CountDownLatch(闭锁)
同步辅助
Semaphore(信号量)
Future
线程池
线程池原理及应用
生产者和消费者
六大设计原则
单一职责
一个类/一个方法只做一件事
依赖倒置原则
依赖抽象,不依赖于具体。 面向接口编程
里氏替代原则
父类出现的地方,都可以用子类替代
迪米特法则
一个类之和自己的朋友打交代,尽量封装
接口隔离原则
功能单一,不要承担过多的职责
开闭原则
对扩展开放,对修改关闭
设计模式
推荐书籍:《GOF设计模式》、《Head First设计模式》、《大话设计模式》
创建型模式
简单工厂模式/工厂方法模式 (Factory Method)
抽象工厂模式
单例模式
创建者模式 (Builder)
原型模式 (Prototype)
结构型模式
代理模式 (proxy)
适配器模式 (Adapter)
装饰器模式
外观门脸模式
桥模式
组合模式
享元模式
行为型模式
观察者模式
模板方法模式
状态模式
策略模式
职责链模式
命令模式
访问者模式
调停者模式
备忘录模式
迭代器模式
解释器模式
代码质量
代码走查
静态代码走查
源代码走查
PMD 缺陷模式匹配Jtest 缺陷模式匹配;数据流分析checkStyle 缺陷模式匹配
字节码走查
findBugs 缺陷模式匹配;数据流分析
理论/技术
缺陷模式匹配
类型推断
模型检查
数据流分析
代码重构、优化
推荐书籍:《重构-改善代码的既有设计》、《clean code》
必要条件
可验证
框架
SpringMVC
Bean管理(IOC)
定义
配置文件注解 (Service、Controller、Repository、Component)id、name的设置
注入
构造器setterfield (注解) Autowired 默认按类型注入 Resource (Java自带) 默认按名称注入
IOC有什么优缺点
AOP
代理模式的应用
Java的代理、Cglib代理
事务的控制
启动加载流程
Dispatch分发流程
MyBatis
基础配置使用
#和$的区别
深入
Jvm
《深入理解Java虚拟机》(周志明,第一版、第二版)
Java源码、类库
操作系统
《深入理解计算计系统》、《从哲学层次看操作系统》
网络
《tcp/ip详解卷一、二、三》
数据结构、算法
数据库-Oracle
DDL
CREATE
ALTER
MODIFY
DROP, TRUNCATE
DML
基础增删改查
表关联查询
group, order by, having等
SQL优化
隐士函数转换
exists, in
索引
B树索引
位图索引
预编译
闪回 (FlashBack)
ACID 事务隔离级别
其他
rownum
rowid和for update更新的区别
学习资源
Java系列
Java基础知识、集合、JVM、多线程、设计模式等介绍;Linux常用命令
- 【Java】Java学习路线
- JAVA学习路线
- Java学习路线
- JAVA学习路线
- java学习路线
- Java学习路线
- Java学习路线
- Java学习路线
- Java学习路线
- Java学习路线
- Java 学习路线
- Java 开发学习路线
- java学习路线
- java学习路线
- java学习视频路线
- JAVA程序员学习路线
- java 学习路线
- java学习路线
- 一些Android手机厂商的闹钟intent
- bootstrap-treeview addNode deleteNode editNode 全都奉上
- 学生管理系统(序列化)
- 常见转场动画
- 每天学点tp(一)
- java 学习路线
- 经典算法:寻找最近公共祖先
- Android 6.0+ 动态权限 一种清爽的封装过程(以及多个权限的处理)
- bzoj4405 [WC2016] 挑战NPC 带花树
- spring 3.2 自定义参数绑定--日期格式转换器
- 如何使用GitHub进行团队Android工程的开发
- [C++]C++ STL Dijkstra算法 带权有向图(邻接表)单源最短路径求解
- mysql备份
- 内核MKDEV(MAJOR, MINOR)宏