JVM-常见加载顺序

简介: JVM-常见加载顺序
public class CodeBlockDemo 
{
    {
        System.out.println("初始化代码");
    }
    CodeBlockDemo()
    {
        System.out.println("构造器");
    }   
    static
    {
        System.out.println("静态代码块");
    }
    //运行后输出结果?
    public static void main(String[] args) 
    {   
        {
            int a = 10;
            //10
            System.out.println("局部代码块");
        }
        new CodeBlockDemo();
        new CodeBlockDemo();
        new CodeBlockDemo();
    }
}

输出:

静态代码块
局部代码块
初始化代码
构造器
初始化代码
构造器
初始化代码
构造器

总结:

  • 静态代码块 > 局部(构造)代码块 > 构造器(构造方法)
  • 随着类的加载而执行,而且只一次, 优先于主函数执行
相关文章
|
7月前
|
安全 Java
对 JVM 的类加载机制以及寻找字节码文件的“双亲委派模型”的理解
对 JVM 的类加载机制以及寻找字节码文件的“双亲委派模型”的理解
45 0
|
4月前
|
Java
1.常见加载顺序
这段代码展示了一个名为 `CodeBlockDemo` 的Java公共类。该类包含多种代码块:初始化块、构造函数、静态块及局部块,并演示了它们的执行顺序:静态代码块 > 初始化代码块/构造代码块 > 构造函数。当创建 `CodeBlockDemo` 实例时,会依次显示“初始化代码”、“构造器”。静态代码块随类加载仅执行一次,优先于主函数执行。主函数中创建三个实例,展示了构造过程。
|
5月前
|
Java
类加载的常见加载顺序
这段内容是关于Java代码执行顺序的示例。代码展示了类的静态代码块、构造器和局部构造块的执行优先级:静态代码块先于构造器和局部构造块执行,并且只在类加载时运行一次。主函数执行前,会依次看到静态代码块、局部构造块(初始化变量)和构造器的输出。列表中总结了执行顺序和特点。
|
7月前
|
前端开发 Java 数据库连接
JVM(类加载机制)
JVM(类加载机制)
65 4
|
7月前
|
存储 缓存 安全
JVM 类的加载篇
JVM 类的加载篇
54 0
|
7月前
|
存储 安全 前端开发
什么是Java虚拟机(JVM),它的作用是什么?
什么是Java虚拟机(JVM),它的作用是什么?
|
7月前
|
安全 Java 应用服务中间件
|
存储 安全 前端开发
JVM类加载详解
JVM类加载详解
110 1
|
缓存 Java 编译器
Jvm 类加载机制解析,一起来了解神秘的类加载机制吧
当程序主动使用某个类时,如果该类还未被加载到内存中,系统会通过 加载,连接,初始化,这三个步骤对类进行初始化,如果没有意外,JVM 将会连续完成这三个步骤,所以有时也称为类初始化。
126 0
Jvm 类加载机制解析,一起来了解神秘的类加载机制吧
jvm(15) -- 类加载器
jvm(15) -- 类加载器
106 0
jvm(15) -- 类加载器