声明:本网站所有内容均为资源介绍学习参考,如有侵权请联系后删除
课程介绍:
本套课程从虚拟机的发展历史,虚拟机的内存结构,对象的分配与回收以及字节码,类加载等多个方面深入地对Java虚拟机进行了剖析。内容详实,语言通俗易懂。理论结合实践,让学习本套视频的朋友可以更快的理解虚拟机的原理,以解决虚拟机所带来的性能瓶颈以及由于虚拟机的不正当参数所导致各种问题。
课程基于jdk7来讲解,环境是使用最新版jdk8,对于jdk8的新特性也会提及。课程以小节的形式发布,每个小节一个内容,每节尽可能独立。课程实战性强,以java虚拟机的内存结构为例,先讲了内存的结构,然后针对每个结构具体讲解。然后讲解监控工具,监控内存,线程等,然后讲三个案例贯穿整个内容
就像使用浏览器打开网页,使用微信聊天一样,运行Java应用需要java虚拟机。我们似乎并不去关注浏览器是如何实现的,也不需要知道微信是如何通信的,我们只要根据其规则来使用就可以了。对于java虚拟机也是同样,因为虚拟机自身隐藏了底层技术的复杂性以及操作系统的差异性,开发者只需要了解其api,并不需要了解其内部原理就能够编写出可运行程序。
然而,凡事都有两面性,当我们对于程序的性能,稳定性等等都有较高的要求的时候,这个时候看起来智能的虚拟机也就没这么智能了,我们就需要对虚拟机的内部结构深入了解之后,才能够根据业务需求,根据自身的情况设定合适的虚拟机参数,才能够让虚拟机高效稳定的运行。另外对于应用运行过程中出现的问题,也只有了解了虚拟机的结构之后才能够对问题进行准确定位。所以在java开发体系中,对系统调优师这一角色需求很大。学习虚拟机中各种运作特性的原理也成为java程序员成长道路上必然会接触到的一课。
课程目录:
第1节说在前面的话5:07分钟
第2节整个部分要讲的内容说明6:58分钟
第3节环境搭建以及jdk,jre,jvm的关系 20:48分钟
第4节jvm初体验-内存溢出问题的分析与解决 17:59分钟
第5节jvm再体验-jvm可视化监控工具 21:17分钟
第6节杂谈 12:37分钟
第7节Java的发展历史 27:24分钟
第8节Java的发展历史续2:27分钟
第9节Java技术体系8:46分钟
第10节jdk8的新特性7:31分钟
第11节lanmbda表达式简介7:02分钟
第12节Java虚拟机-classic vm6:06分钟
第13节Java虚拟机-ExactVM3:35分钟
第14节Java虚拟机-HotSpotVM4:23分钟
第15节Java虚拟机-kvm3:04分钟
第16节Java虚拟机-JRockit4:12分钟
第17节Java虚拟机-j94:23分钟
第18节Java虚拟机-dalvik2:20分钟
第19节Java虚拟机-MicrosoftJVM3:57分钟
第20节Java虚拟机-高性能Java虚拟机2:58分钟
第21节Java虚拟机-TaobaoVM3:06分钟
第22节Java内存区域-简介7:56分钟
第23节Java内存区域-Java虚拟机栈 12:04分钟
第24节Java内存区域-程序计数器 12:54分钟
第25节Java内存区域-本地方法栈2:39分钟
第26节Java内存区域-堆内存5:08分钟
第27节Java内存区域-方法区6:32分钟
第28节Java内存区域-直接内存和运行时常量池 15:53分钟
第29节对象在内存中的布局-对象的创建 21:19分钟
第30节探究对象的结构 13:47分钟
第31节深入理解对象的访问定位8:01分钟
第32节垃圾回收-概述6:20分钟
第33节垃圾回收-判断对象是否存活算法-引用计数法详解 14:08分钟
第34节垃圾回收-判断对象是否存活算法-可达性分析法详解7:09分钟
第35节垃圾回收算法-标记清除算法4:36分钟
第36节垃圾回收算法-复制算法 14:35分钟
第37节垃圾回收算法-标记整理算法和分代收集算法5:24分钟
第38节垃圾收集器-serial收集器详解9:45分钟
第39节垃圾收集器-parnew收集器详解4:53分钟
第40节垃圾收集器-parallel收集器详解 11:02分钟
第41节垃圾收集器-cms收集器详解 14:58分钟
第42节最牛的垃圾收集器-g1收集器详解 18:04分钟
第43节内存分配-概述4:23分钟
第44节内存分配-Eden区域 22:51分钟
第45节内存分配-大对象直接进老年代6:42分钟
第46节内存分配-长期存活的对象进入老年代3:40分钟
第47节内存分配-空间分配担保4:54分钟
第48节内存分配-逃逸分析与栈上分配 10:32分钟
第49节虚拟机工具介绍 10:27分钟
第50节虚拟机工具-jps详解 11:20分钟
第51节虚拟机工具-jstat详解9:20分钟
第52节虚拟机工具-jinfo详解5:03分钟
第53节虚拟机工具-jmap详解8:48分钟
第54节虚拟机工具-jhat详解8:10分钟
第55节虚拟机工具-jstack详解 10:19分钟
第56节可视化虚拟机工具-Jconsole内存监控7:09分钟
第57节可视化虚拟机工具-Jconsole线程监控 12:18分钟
第58节死锁原理以及可视化虚拟机工具-Jconsole线程死锁监控 10:38分钟
第59节VisualVM使用详解8:03分钟
第60节性能调优概述 11:22分钟
第61节性能调优-案例1 23:28分钟
第62节性能调优-案例2 10:05分钟
第63节性能调优-案例3 12:41分钟
第64节前半部分内容整体回顾 15:41分钟
第65节Class文件简介和发展历史 11:26分钟
第66节Class文件结构概述 16:50分钟
第67节Class文件设计理念以及意义 13:41分钟
第68节文件结构-魔数9:49分钟
第69节文件结构-常量池 23:44分钟
第70节文件结构-访问标志 11:36分钟
第71节文件结构-类索引 11:26分钟
第72节文件结构-字段表集合 13:21分钟
第73节文件结构-方法表集合 10:06分钟
第74节文件结构-属性表集合 18:23分钟
第75节字节码指令简介9:18分钟
第76节字节码与数据类型9:34分钟
第77节加载指令9:33分钟
第78节运算指令 10:24分钟
第79节类型转换指令 13:42分钟
第80节对象创建与访问指令9:38分钟
第81节操作树栈指令3:27分钟
第82节控制转移指令 11:58分钟
第83节方法调用和返回指令6:37分钟
第84节异常处理指令9:44分钟
第85节同步指令7:34分钟
第86节类加载机制概述7:26分钟
第87节类加载时机 13:15分钟
第88节类加载的过程-加载 15:15分钟
第89节类加载的过程-验证 10:24分钟
第90节类加载的过程-准备5:40分钟
第91节类加载的过程-解析 14:04分钟
第92节类加载的过程-初始化 19:41分钟
第93节类加载器 22:41分钟
第94节双亲委派模型 17:03分钟
第95节运行时栈帧结构8:46分钟
第96节局部变量表 20:48分钟
第97节操作数栈8:36分钟
第98节动态连接2:56分钟
第99节方法返回地址和附加信息3:24分钟
第100节方法调用-解析调用9:49分钟
第101节方法调用-静态分派调用 16:21分钟
第102节方法调用-动态分派调用9:02分钟
第103节动态类型语言支持9:27分钟
第104节字节码执行引擎小结3:38分钟
第105节总结与回顾 10:55分钟
第106节happens-before简单概述 15:17分钟
第107节重排序问题 23:19分钟
第108节锁的内存语义 13:54分钟
第109节volatile的内存语义 12:04分钟
第110节final域内存语义 34:07分钟