摘要:
已知大写字母 A 的 ASCII 码为 65,请问大写字母 L 的 ASCII 码是多少? public static void main(String[] args) { System.out.println((int)'L'); } 阅读全文
posted @ 2022-06-19 17:45
开源遗迹
阅读(42)
评论(0)
推荐(0)
摘要:
Java语言中的线程安全 按照线程安全的“安全程度”由强至弱来排序,可以将Java语言中各种操作共享的数据分为以下五类:不可变、绝对线程安全、相对线程安全、线程兼容和线程对立。 不可变 不可变的对象一定是线程安全的,无论是对象的方法实现还是方法的调用者,都不需要再进行任何线程安全保障措施。 Java 阅读全文
posted @ 2022-06-19 12:39
开源遗迹
阅读(51)
评论(0)
推荐(0)
摘要:
Java内存模型 Java 内存模型指的是 JMM Java 语言为了保证并发编程中可以满足原子性、可见性及有序性,于是推出了一个概念就是 JMM 内存模型。 JMM 内存模型,目的是为了在多线程条件下,使用共享内存进行数据通信时,通过对多线程程序读操作、写操作行为规范约束,来尽量避免多次内存数据读 阅读全文
posted @ 2022-06-19 12:13
开源遗迹
阅读(53)
评论(0)
推荐(0)
摘要:
局部变量表 局部变量表(Local Variables Table)是一组变量值的存储空间,用于存放方法参数和方法内部定义的局部变量。在Java程序被编译为Class文件时,就在方法的Code属性的max_locals数据项中确定了该方法所需分配的局部变量表的最大容量。 局部变量表的容量以变量槽(V 阅读全文
posted @ 2022-06-19 11:19
开源遗迹
阅读(34)
评论(0)
推荐(0)
摘要:
类加载的时机 一个类型从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期将会经历加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)七 阅读全文
posted @ 2022-06-19 11:10
开源遗迹
阅读(44)
评论(0)
推荐(0)
摘要:
如何判断对象已死? JVM 中判断对象是否已经死亡的算法主要有 2 种:引用计数法、可达性分析法。 引用计数法 如果一个对象被其他变量所引用,则让该对象的引用计数+1,如果该对象被引用2次则其引用计数为2,依次类推。 某个变量不再引用该对象,则让该对象的引用计数-1,当该对象的引用计数变为0时,则表 阅读全文
posted @ 2022-06-19 10:45
开源遗迹
阅读(55)
评论(0)
推荐(0)
摘要:
对象的创建过程 在 Java 语言层面,创建对象一般是借助 new 关键字去实现: User user = new User(); 而在虚拟机中,对象的创建过程如下: 当Java虚拟机遇到一条字节码new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用, 并且检查这个符号引用 阅读全文
posted @ 2022-06-19 00:26
开源遗迹
阅读(60)
评论(0)
推荐(0)

浙公网安备 33010602011771号