zoukankan      html  css  js  c++  java
  • 又见构造块与静态代码块(笔试)

    请问父类/子类中的方法谁先加载?

      在执行main方法之前,会把本类的方法加载到方法区,意味着先执行静态代码块,然后就开始new对象,

    new对象之前会先执行构造方法,在前面学习中知道构造方法体执行之前会先执行构造块;

    子类和父类谁先加载?

      肯定是先加载父类,因为到最后在测试类中找不到父类就蒙了。

      先执行父类的静态代码块-》在执行子类的静态代码块-》父类的构造块-》父类的无参构造方法-》子类的构

    造块-》子类的无参构造方法

    我们前面讲过在创建子类对象时,由于子类对象里面包含着一个父类类型的对象,所以为了完整创建子类类型

    的对象必须先创建父类的对象,创建父类对象时必须创建构造方法,只是默认调用无参构造。(所以由此可得

    这时候应该先调用父类的无参构造)

    如下图所示:

    父类:

     子类:

    先执行父类的静态代码块,再执行子类的静态代码块。

    执行父类的构造块,执行父类的构造方法体。

    执行子类的构造块,执行子类的构造方法体。

  • 相关阅读:
    Spring 09 : AOP实例
    Spring08 AOP概念
    Spring 07 : 动态代理
    Spring06 Spring+Junit
    Spring05 : 基于注解的IOC
    Spring03 : 依赖注入
    jupyter修改python核(使用不同的python虚拟环境)
    线性代数的本质——引入几何视角
    图像的去雾与加雾
    从MATLAB看一个IDE应该具有的素质
  • 原文地址:https://www.cnblogs.com/xujiaqi/p/13587358.html
Copyright © 2011-2022 走看看