参数-server:启动Server模式,因为在Server模式下,才可以启用逃逸分析。
AI时代,有人焦虑失业,有人偷偷变强,不写代码不烧脑~
相关语录
-
局部变量表中的变量也是重要的垃圾回收根节点,只要被局部变量表中直接或间接引用的对象都不会被回收。
-
JDK包含了JRE,JRE包含了JVM。
-
Java编译器输入的指令流是一种基于栈的指令集架构,另外一种指令集架构则是基于寄存器的指令集架构。
-
这是因为局部变量表最基本的存储单元是slot,long类型的数据占两个slot(见4.3.2节),所以需要加1。
-
一般来说,静态方法、私有方法、final方法、实例构造器、父类方法都是非虚方法
-
虚拟机栈是以栈帧为基本单位构成的,栈帧包括局部变量表、操作数栈、动态链接、方法返回地址和一些附加信息
-
不同类加载器看似是继承关系,实际上是聚合关系。在下层加载器中,包含着上层加载器的引用,也就是说应用程序类加载器并不是扩展类加载器的子类。
-
String类型的常量池使用比较特殊,当直接使用字面量的方式(也就是直接使用双引号)创建字符串对象时,会直接将字符串存储至常量池。当使用其他方式(如以new的方式)创建字符串对象时,字符串不会直接存储至常量池,但是可以通过调用String的intern()方法将字符串存储至常量池。
-
每个线程在创建时都会创建一个虚拟机栈,其内部由许多栈帧(StackFrame)构成,每个栈帧对应着一个Java方法的调用
-
如果当前帧是由构造方法或者实例方法创建的,那么该对象引用this将会存放在index为0的slot处,其余的参数按照参数表顺序继续排列。
-
它的核心思想是将活着的内存空间分为两块,每次只使用其中一块,在垃圾回收时将正在使用的内存中的存活对象复制到未被使用的内存块中,之后清除正在使用的内存块中的所有对象。两块内存交替使用,从而完成垃圾对象的回收

