java代码的执行顺序

本文详细解析了Java中类的加载顺序,包括类属性、静态块和main函数的执行顺序,以及对象实例化的步骤,涵盖对象属性、非静态块和构造函数的调用流程。通过具体示例代码,清晰展示类加载与对象实例化过程中的输出结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

类加载顺序

1、类属性
2、静态块
3、main函数

对象实例化顺序

1、对象属性
2、非静态块
3、构造函数

示例

class A {
  public A() {
    System.out.println("A的构造方法");
  }

  public static int j = print();

  public static int print() {
    System.out.println("A print");
    return 521;
  }
}

public class Test1 extends A {
  public Test1() {
    System.out.println("Test1的构造方法");
  }

  public static int k = print();

  public static int print() {
    System.out.println("Test print");
    return 522;
  }

  public static void main(String[] args) {
    System.out.println("main start");
    Test1 t1 = new Test1();
  }
}

运行结果:

A print
Test print
main start
A的构造方法
Test1的构造方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值