摘要: 运行时数据区 线程独有 本地方法栈、虚拟机栈、程序计数器 这些与线程对应的数据区会随着线程开始和结束创建和销毁 JVM涉及的线程 线程是一个程序里的运行单元。JVM允许一个应用有多个线程并行的执行 在Hotspot JVM里,每个线程都与操作系统的本地线程直接映射。 当一个Java线程准备好执行以后 阅读全文
posted @ 2020-05-25 21:54 梦想成为DALAO 阅读(152) 评论(0) 推荐(0) 编辑
摘要: JVM加载细节 JVM堆class文件采用按需加载的方式:当需要使用该类时才会将它的class文件加载到内存生成class对象。 而加载某个类的class文件时采用双亲委派模式,即把请求交由父类处理。 工作原理 说白了:就是从上到下的进行加载,老大bootStrap加载器加载,加载不了,就小弟加载, 阅读全文
posted @ 2020-05-24 22:14 梦想成为DALAO 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 类加载器分类 public class StackStruTest { public static void main(String[] args) { // 对用户自定义个类来说:默认使用系统类加载器进行加载 AppClassLoader ClassLoader classLoader = Sta 阅读全文
posted @ 2020-05-24 21:57 梦想成为DALAO 阅读(136) 评论(0) 推荐(0) 编辑
摘要: JVM小知识点 Java是栈的指令集架构 利用栈来执行程序指令 简单 不用分配寄存器 指令级小 不用分配寄存器,所以是执行指令不涉及到指令地址 对class文件进行反编译 javap -v 文件名.class 栈指令级:跨平台、指令级小、指令多、执行性能比不上寄存器指令集 JVM的生命周期: 启动( 阅读全文
posted @ 2020-05-24 21:27 梦想成为DALAO 阅读(116) 评论(0) 推荐(0) 编辑
摘要: Java区别C++ Java内存动态自动分配 Java具有垃圾收集技术 C++的内存对程序员是可见的!这就会很难 JVM位置 执行流程 JVM虚拟机内部结构 阅读全文
posted @ 2020-05-24 20:45 梦想成为DALAO 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 序列化:将对象转换为字节序列的过程 反序列化:将字节序列转换为对象的过程 原因:转换为字节序列后,保存字节码文件,方便网络的传输。 Person类 package demo1.serializable; import java.io.Serializable; public class Person 阅读全文
posted @ 2020-05-23 14:06 梦想成为DALAO 阅读(224) 评论(0) 推荐(0) 编辑