Java 中构造器、初始化块、静态初始化块的执行顺序

Java 中构造器、初始化块、静态初始化块的执行顺序静态初始化块 > 初始化块 > 构造器 父类 > 子类综合下来顺序就是:父类静态初始化块 子类静态初始化块 父类初始化块 父类构造器 子类初始化块 子类构造器需要注意静态初始化块是在类第一次加载的时候就会进行初始化。…

大家好,又见面了,我是你们的朋友全栈君。

  • 静态初始化块 > 初始化块 > 构造器
  • 父类 > 子类

综合下来顺序就是:

  • 父类静态初始化块
  • 子类静态初始化块
  • 父类初始化块
  • 父类构造器
  • 子类初始化块
  • 子类构造器

需要注意静态初始化块是在类第一次加载的时候就会进行初始化。

public class B extends A{
    static {
        System.out.println("111");
    }
    {
        System.out.println("222");
    }

    public B(){
        System.out.println("333");
    }
    public static void main(String []args){
        new StaticKeywordTest();
        System.out.println("*******************************");
        new StaticKeywordTest();
        System.out.println("*******************************");
        new StaticKeywordTest();
    }
}
class A{
    static {
        System.out.println("AAA");
    }
    {
        System.out.println("BBB");
    }

    public A(){
        System.out.println("CCC");
    }
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/147249.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • Gmapping学习总结「建议收藏」

    Gmapping学习总结「建议收藏」Gmapping学习总结Gmapping的程序框架是依托Open_slam,该框架主要分成slam_gmapping和openslam_gmapping。在slam_gmapping可以从lasercallback出发,作为整个框架的起点(虽然有main函数,main函数在main.cpp中,从这里出发不影响这个流程的分析)。Lasercallback函数在slam_gmapping.cpp文件…

    2022年6月17日
  • java.lang.Integer常用方法

    java.lang.Integer常用方法+构造函数Integer(intvalue)通过指定的int值构成一个Integer对象。Integer(Strings)通过指定的String值构成一个Integer对象。。+方法int intValue()将此对象转化为int。long longValue()将此对象转化为long。byte byteValue()将此对象转化为byte。sho…

    2022年7月16日
  • springapplicationevent_Spring bean

    springapplicationevent_Spring bean相信使用过SpringBoot的开发人员,都对SpringBoot的核心模块中提供的SpringApplication类不陌生。SpringApplication类的run()方法往往在Spring应用的入口类中被调用,以启动Spring应用。1.Spring应用的入口类与SpringApplication类1)Spring应用的入口类Spring应用的入口类是Spring应用的配置起点,是配置Spring上下文的起点,往往使用了@SpringBootApplication或@EnableA

    2022年9月3日
  • 字符串转json对象 java_js中对象转字符串的方法

    字符串转json对象 java_js中对象转字符串的方法1.JSON数据和Java对象的相互转换JSON数据和Java对象的相互转换*JSON解析器:*常见的解析器:Jsonlib,Gson,fastjson,jackson1.Java对象转换JSON1.使用步骤:1.导入jackson的相关jar包2.创建Jackson核心对象ObjectMapper3.调用ObjectMapper的相关方法进行转换…

    2022年9月16日
  • 详解自动编码器(AE)

    详解自动编码器(AE)自动编码器(Auto-Encoders,AE)降噪自编码(DenoisingAuto-Encoders,DAE)(2008)堆叠降燥自动编码器(StackedDenoisingAuto-Encoders,SAE)(2008)卷积自动编码器(ConvolutionAuto-Encoders,CAE)(2011)变分自动编码器(VariationalAuto-Encoders,VAE)(Kingma,2014)

    2022年5月1日
  • iOS之深入解析Xcode 13正式版发布的40个新特性

    iOS之深入解析Xcode 13正式版发布的40个新特性一、前言Xcode13包括适用于iOS15、iPadOS15、tvOS15、watchOS8和macOSBigSur11.3的SDK。Xcode13ReleaseCandidate支持iOS9及更高版本、tvOS9及更高版本以及watchOS2及更高版本的设备上调试。Xcode13需要运行macOS11.3或更高版本的Mac。二、通用Xcode13包括对Swift并发编程的原生支持、对XcodeCloud持续集成和

    2022年4月29日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号