Java基础深度总结:目录

Java语言概述
   |----Java语言特性
   |---- JDK、JRE与JVM
Java语言基础
   |----数据类型
          |---- 基本数据类型
          |---- 数据类型转换
          |---- 包装类型
          |---- 缓存池
   |----String
          |----String概述
          |----String的不可变性
                  |----不可变性的好处
          |----String,StringBuffer,StringBuilder
          |----String Pool 字符串常量池(重点)
                  |----String Pool的位置
                  |----String s = "abc
                  |----String s = new String(“abc”)
                  |----String.intern()解析
                  |----JDK1.6与JDK1.7 intern方法的区别
                  |----String里的"+"操作
          |----String 作为形参
   |----关键字
          |----final
                  |----final数据
                  |----final方法
                  |----final修饰参数
                  |----final类
          |----static
                  |----静态变量与实例变量(重点)
                  |----静态方法
                  |----静态代码块(重点)
                  |----静态内部类
                  |----静态导包
                  |----静态的注意事项
                  |----static与final(重点)
   |----Object类
          |----equals()
                  |----equals概述
                  |----何时才要覆盖equals方法
                  |----覆盖equals的通约
                  |----重写equals()中的getClass与instanceof
          |----hashCode()
                  |----Hash概述
                  |----hashCode的作用
                  |----为什么重写equals的同时还得重写hashCode(重点)
                  |----hashCode的实现
          |----toString()
          |----clone()
                  |----clone概述
                  |----Cloneable接口
                  |----clone与new的区别
                  |----浅拷贝与深拷贝(重点)
                  |----Object.clone
                  |----浅拷贝存在的问题
                  |----覆盖clone的规则
                  |----clone的替代方案
   |----封装
   |----继承
          |----访问权限
          |----继承
                  |----继承概述
                  |----继承的优缺点
                  |----super
                  |----Java继承的特点
                  |----构造器初始化顺序
                  |----使用继承的注意事项
          |----抽象类与接口
                  |----抽象
                  |----抽象类
                  |----接口
                  |----接口与抽象类的异同
                  |----使用选择
   |----多态
          |----什么是多态
          |----多态的好处
          |----多态分类
          |----向上转型与向下转型
          |----方法重载(Overload)(重点)
                  |----方法重载的三种方式
                  |----方法重载的特点
                  |----重载的实现原理:静态分派
                  |----静态分派中的匹配优先级
          |----方法重写(Override)(重点)
                  |----方法重写的特点
                  |----重写实现原理:动态分派
                  |----动态分派中的匹配优先级
          |----方法重载与方法重写对比
          |----静态方法和字段不参与多态
   |----异常
          |----异常概述
          |----Java的异常处理机制
          |----Java异常体系和分类
          |----throw和throws:异常抛出和异常声明
          |----try-catch-finally异常处理
                  |----语法形式
                  |----规则
                  |----执行顺序
                  |----不要在finally块中做与资源释放无关的操作
          |----栈轨迹
          |----异常链
          |----自定义异常类
   |----反射
          |----Java反射机制
          |----Class对象
          |----获取Class对象
                  |----Class.forName()
                  |----通过类字面量:Object.class
                  |----通过对象的getClass方法
                  |----三种获取Class对象方式的区别(重点)
          |----通过Class对象创建实例对象
          |----获取属性和方法
          |----暴力反射
          |----反射的优缺点
   |----泛型
          |----泛型概述
          |----泛型类型命名规范
          |----泛型的定义和使用
                  |----泛型类
                  |----泛型接口
                  |----泛型方法
          |----有界泛型类型
          |----泛型实现原理:类型擦除(重点)
          |----类型擦除的问题
          |----通配符

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
绝对想你所想,超乎想象!够详细,够给力! 目录 1. Jvm内存空间结构是什么样的? 1 程序计数器 1 Java栈 1 本地方法栈 2 堆 2 方法区 3 2. Jvm堆内存的划分结构和优化 3 2.1. 原理 6 2.1.1. 年轻代 6 2.1.2. 年老代 6 2.1.3. 持久代 7 2.2. 参数说明 8 2.3. 疑问解答 9 2.4. 垃圾回收器选择 10 2.4.1. 串行收集器 10 2.4.2. 并行收集器(吞吐量优先) 10 2.4.3. 并发收集器(响应时间优先) 11 2.4.4. 其它垃圾回收参数 11 2.5. 辅助信息参数设置 12 2.6. 关于参数名称等 13 3. JVM服务参数调优实战 14 3.1. 大型网站服务器案例 14 3.2. 内部集成构建服务器案例 15 4. 常量池在jvm的哪个空间里边? 17 5. jvm垃圾回收是什么时候触发的? 17 5.1. 那究竟GC为我们做了什么操作呢? 17 5.1.1. Jvm怎么判断对象可以回收了? 18 5.2. 下面我们来看一下几种垃圾收集算法 18 5.2.1. 在JDK1.2之前,使用的是引用计数器算法, 18 5.2.2. 根搜索算法 19 5.2.3. 引用的分类 19 5.3. 方法区也是会被回收的 20 5.4. 下面我们来逐一介绍一下每个垃圾回收器。 22 5.4.1. 1、 Serial收集器 22 5.4.2. 2、 ParNew收集器 23 5.4.3. 3、 ParallelScavenge 23 5.4.4. 4、 ParallelOld 24 5.4.5. 5、 SerialOld 24 5.4.6. 6、CMS 24 5.4.7. 7、 GarbageFirst(G1 ) 26 6. 常量池如何触发的垃圾回收? 28 7. 垃圾回收从哪里开始检测树进行回收?根节点是什么? 28 7.1. 目前java中可作为GC Root的对象有 29 8. Redis怎么判断对象可以清理了? 29 9. Redis怎么提高命中率? 29 10. Finalize中调用垃圾回收方法,再调用方法会回收么? 29 11. Int进行自增操作,如何保证线程安全? 30 12. Int a=1是原子方法,布尔类型进行赋值是原子方法么? 30 12.1. 多线程原子操作的安全性 31 13. Cas怎么实现unsafe? 32 13.1. Unsafe 32 13.2. CAS 32 13.3. 由CAS分析AtomicInteger原理 33 13.4. CAS的缺点 35 14. Map数据结构? 35 14.1. 一、定义 36 14.2. 二、构造函数 36 14.3. 三、数据结构 36 14.4. 四、存储实现:put(key,vlaue) 38 14.5. 五、读取实现:get(key) 41 15. 一百万数据放Arraylist数组,怎么放? 在哪个代? 42 15.1.1. 调整数组容量 42 16. Hashmap和 concurrentHashmap除了线程安全 还有什么区别,put的时候是怎么处理的。 43 17. 数据库组合索引,储存在一个叶子节点还是多个? 44 17.1. 索引的利弊与如何判定,是否需要索引: 44 17.1.1. 索引的好处 44 17.1.2. 索引的弊端 44 17.1.3. 如何判定是否须要创建索引 44 17.2. 复合索引优化 45 17.3. 下面是一些常见的索引限制问题 45 17.3.1. 使用不等于操作符(<>, !=) 45 17.3.2. 使用 is null 或 is not null 45 17.3.3. 使用函数 45 17.3.4. 比较不匹配的数据类型 46 17.4. 关于索引的排序 46 18. 数据库没有orderby默认如何排序。 46 19. 分布式事务如何实现。 46 19.1. 1 事务/分布式事务 47 19.1.1. 1.1 事务 47 19.1.2. 1.2 分布式事务与 XA 规范 47 19.2. 2 两阶段提交协议 47 19.2.1. 2.1 预提交阶段 48 19.2.2. 2.2 提交阶段 48 19.3. 3 分布式事务应用框架 48 19.3.1. 3.1 角色 48 19.3.2. 3.2 交互时序 49 19.3.3. 3.3 关键点 50 19.3.4. 参考 50 20. Jvm底层源码 51 21. 二叉树怎么实现的? 51 22. Executourservice 数据结构。哪种只能执行一个线程。 Cache怎么实现的 fixed线程如果中断,线程回自己销毁么? 51 23. 栅栏的原理和实现。 51 23.1. 1. CyclicBarrier简介 51 23.2. 2. CyclicBarrier数据结构 52 23.3. 3. CyclicBarrier源码分析(基于JDK1.7.0_40) 52 23.3.1. 3.1 构造函数 52 23.3.2. 3.2 等待函数 53 23.4. 4. CyclicBarrier的使用示例 57 23.4.1. 示例1 57 23.4.2. 示例2 59 24. Blockingqueue有几种形式?各自的编码方式。 72 24.1. Queue接口 72 24.2. BlockingQueue接口 73 24.2.1. ArrayBlockingQueue 74 24.2.2. LinkedBlockingQueue 78 24.2.3. LinkedBlockingDeque(双向并发阻塞队列) 84 24.2.4. PriorityBlockingQueue(优先阻塞队列) 85 24.2.5. 总结一下阻塞队列 90 25. Tomcat 如何管理servlet? 90 26. Servlet生命周期 90 27. 没有缓存,如何实现领券并发操作? 92

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值