zoukankan      html  css  js  c++  java
  • 深入理解Java虚拟机

    第一部分 走进Java
    1 走进Java
    第二部分 自动内存管理机制
    2 Java内存区域与内存溢出异常
    运行时数据区域
    程序计数器
    Java虚拟机栈
    本地方法栈
    Java堆
    方法区

    HotSpot虚拟机在Java堆中对象分配、布局、访问的过程
    对象的创建
    对象的内存布局 对象头 实例数据 对齐填充
    对象的访问定位 句柄 直接指针

    OutOfMemoryError异常

    3 垃圾收集器与内存分配策略
    哪些内存需要回收
    什么时候回收
    如何回收

    确定对象不可能再被任何途径使用
    引用计数算法
    可达性分析算法
    强软弱虚四种引用类型
    finalize()

    垃圾收集算法
    标记清除算法
    复制算法
    标记整理算法

    垃圾收集器

    4 虚拟机性能监控与故障处理工具
    5 调优案例分析和实战
    第三部分 虚拟机执行子系统
    6 类文件结构
    7 虚拟机类加载机制

    类加载过程
    加载 验证 准备 解析 初始化

    类加载器
    双亲委派模型
    启动类加载器 扩展类加载器 应用程序类加载器
    如果一个类加载器收到了类加载的请求 它首先不会自己去加载这个类
    而是把这个请求委派给父类加载器去完成 当父加载器无法完成加载子加载器才会加载

    8 虚拟机字节码执行引擎
    运行时栈帧结构
    局部变量表 操作数栈 动态连接 方法返回地址 附加信息

    9 类加载及执行子系统的案例与实战
    第四部分 程序编译与代码优化
    10 早期编译期优化
    11 晚期运行期优化
    第五部分 高效并发
    12 Java内存模型与线程
    13 线程安全与锁优化

  • 相关阅读:
    用react重构个人网站 3-23
    用react重构个人网站 3-22
    React官方文档笔记之快速入门
    .Net多线程编程—同步机制
    .Net多线程编程—Parallel LINQ、线程池
    .Net多线程编程—并发集合
    .Net多线程编程—任务Task
    【翻译】MongoDB指南/聚合——聚合管道
    【翻译】MongoDB指南/CRUD操作(四)
    【翻译】MongoDB指南/CRUD操作(三)
  • 原文地址:https://www.cnblogs.com/huanyi0723/p/7423337.html
Copyright © 2011-2022 走看看