java-各种成员变量初始化过程-待完善

前置条件

一、本文章讨论的成员变量

    public static final String aa = "aa";
    public static final Integer bb = 1;
    public static final Students cc = new Students();
    public static String aa1 = "aa";
    public static Integer bb1 = 1;
    public static String bb2 = Test36.AA2 +"AA3";
    public static Students cc1 = new Students();

static final 修饰变量,如果可以在编译期推导出来,则在编译器分配内存及赋值,如果不能则在初始化赋值。

static 修改 在链接阶段的准备阶段分配内存并赋默认值(int 类型为0,Integer 为 null,对象 为 null)

然后再初始化时赋值。

父类静态成员变量0

父类静态代码块执行...

子类静态成员变量初始化a0

子类静态代码块执行了....

父类非静态成员变量1

父类非静态代码块执行...

父类无参构造方法执行

子类非静态成员变量初始化b0

子类非静态态代码块执行了....

子类的无参构造方法执行

Setter被执行——spring容器

类的初始化,参考

https://blog.csdn.net/aoxiang_yuanfang/article/details/110329375?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0-110329375-blog-5293427.235^v38^pc_relevant_sort_base3&spm=1001.2101.3001.4242.1&utm_relevant_index=3

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值