原文出处: iceAeterna

  在Java应用程序运行时,Java虚拟机会保存一份内部的运行时常量池,它区别于class文件的常量池,是class文件常量池映射到虚拟机中的数据结构。 关于class文件常量池的部分可以参考之前的博文实例探索Class文件

2.CONSTANT_Fieldref入口解析

3.CONSTANT_Methodref入口解析

4.CONSTANT_InterfaceMethodRef入口解析

5.CONSTANT_String入口解析

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package com.ice.intern;
 
public class InternTest {
 
    public static void main(String args[]){
        String a = new String("123");
        String b = a;
        String c = new String("123");;
 
        System.out.println("before intern:");
        System.out.println("a = b ? :" + (a == b));
        System.out.println("a = c ? :" + (a == c));
 
        a = a.intern();
        c = c.intern();
 
        System.out.println("after intern:");
        System.out.println("a = b ? :" + (a == b));
        System.out.println("a = c ? :" + (a == c));
    }
 
}

结果如下:

Java常量池解析与字符串intern简介

(6).其他类型(数据基本类型)入口解析

6.直接引用

7.装载约束

Java常量池解析与字符串intern简介

相关文章:

  • 2021-05-24
  • 2021-07-13
  • 2021-05-16
  • 2021-10-30
  • 2021-06-18
  • 2021-07-13
猜你喜欢
  • 2021-07-06
  • 2021-07-04
  • 2021-10-14
  • 2021-06-23
相关资源
相似解决方案