上一页 1 ··· 8 9 10 11 12 13 14 15 16 下一页
摘要: JVM指令手册 一、栈和局部变量操作 将常量压入栈的指令 aconst_null 将null对象引用压入栈 iconst_m1 将int类型常量-1压入栈 iconst_0 将int类型常量0压入栈 iconst_1 将int类型常量1压入栈 iconst_2 将int类型常量2压入栈 iconst 阅读全文
posted @ 2020-12-16 10:46 哈哈丶丶 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 1. 垃圾回收器的分类 和 GC性能指标 垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商、不同版本的JVM来实现。 由于JDK的版本处于高速迭代过程中,因此Java发展至今已经衍生了众多的GC版本。 从不同角度分析垃圾收集器,可以将GC分为不同的类型。 1.1 分类 按线程数分(垃圾回收线程 阅读全文
posted @ 2020-12-09 17:18 哈哈丶丶 阅读(564) 评论(0) 推荐(0) 编辑
摘要: 1. System.gc() 的理解 在默认情况下,通过System.gc()者Runtime.getRuntime().gc()(前者的底层就是后者)的调用,会显式触发Full GC,同时对老年代和新生代进行回收,尝试释放被丢弃对象占用的内存。 然而System.gc()调用附带一个免责声明,无法 阅读全文
posted @ 2020-12-08 15:44 哈哈丶丶 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 1. 标记阶段算法 简单来说,垃圾回收 分成两步, 第一步找出垃圾,第二步进行回收,而标记阶段使用的算法,就是 为了找出谁是垃圾 在堆里存放着几乎所有的Java对象实例,在GC执行垃圾回收之前,首先需要区分出内存中哪些是存活对象,哪些是已经死亡的对象。 只有被标记为己经死亡的对象,GC才会在执行垃圾 阅读全文
posted @ 2020-12-08 15:43 哈哈丶丶 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 1. 垃圾回收概述 背景 Java 和 C++语言的区别,就在于垃圾收集技术和内存动态分配上,C语言没有垃圾收集技术,需要我们手动的收集。 垃圾收集,不是Java语言的伴生产物。早在1960年,第一门开始使用内存动态分配和垃圾收集技术的Lisp语言诞生。 关于垃圾收集有三个经典问题: 哪些内存需要回 阅读全文
posted @ 2020-12-08 11:32 哈哈丶丶 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 1. String的基本特性 String:字符串,使用一对 “” 引起来表示 String s1 = "mogublog" ; // 字面量的定义方式 String s2 = new String("moxi"); // new 对象的方式 String声明为final的,不可被继承 String 阅读全文
posted @ 2020-12-08 10:00 哈哈丶丶 阅读(530) 评论(0) 推荐(1) 编辑
摘要: 1. 执行引擎概述和基本执行过程 1.1 概述 在前面的博文中, 已经对 类的加载,和加载后类的运行时数据区进行说明,但是 我们的java程序是运行在jvm中的,而我们的字节码指令并不能直接被操作系统所识别, 这个时候就需要 执行引擎登场了. 执行引擎是Java虚拟机核心的组成部分之一。“虚拟机”是 阅读全文
posted @ 2020-12-07 16:32 哈哈丶丶 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 我们知道 在jdk8 之后,Hotspot 将 方法区的实现改为元空间,直接使用本地内存,下面就来详细了解一下 1. 直接内存的概述 不是虚拟机运行时数据区的一部分,也不是《Java虚拟机规范》中定义的内存区域。 直接内存是在Java堆外的、直接向系统申请的内存区间。 起源于NIO,通过存在堆中的D 阅读全文
posted @ 2020-12-04 17:08 哈哈丶丶 阅读(351) 评论(0) 推荐(1) 编辑
摘要: 1. 对象的实例化 1.1 对象的实例化方式 new:最常见的方式,直接new 或者 单例模式的 getInstance 方法等 Class的newInstance方法:反射方式, 在JDK9里面被标记为过时的方法,因为只能调用空参构造器,并且权限必须为 public Constructor的new 阅读全文
posted @ 2020-12-04 16:23 哈哈丶丶 阅读(195) 评论(1) 推荐(1) 编辑
摘要: 1. 栈 堆 方法区的交互关系 前面的文章中已经了解了 栈 ,堆, java 运行时区中另一个非常重要的区域就是 方法区 那么这三者又有什么关系呢? 与线程共享与否的角度 从Person person = new Person(); 看 Person 类的 .class 信息存放在方法区中 pers 阅读全文
posted @ 2020-12-04 16:20 哈哈丶丶 阅读(446) 评论(0) 推荐(2) 编辑
上一页 1 ··· 8 9 10 11 12 13 14 15 16 下一页