Java代码块的执行顺序

      Java的执行代码具有相应的顺序,其主要可以概括为以下一条链条:

                父类静态变量--》父类静态代码块--》--》子类静态变量--》子类静态代码块--》父类非静态变量--》父类非静态代码块--》

                 父类构造方法--》子类非静态变量--》子类非静态代码块--》子类构造方法

      现提供代码如下:

package com.qst.Day03.demo03;
/**
 * 使用for循环打印等腰三角形
 * @author Administrator
 *
 */
public class Son extends father{
    private static String a = "子类静态变量";
    private String b = "子类非静态变量";
    static {
        System.out.println("子类静态代码块!");
    }
    
    {
        System.out.println("子类非静态代码块!");
    }
    
    public Son(){
        System.out.println("子类构造方法");
    }
    
    public static void main(String[] args) {
        Son s = new Son();
    }
}
class father{
    private static String a = "父类静态变量";
    private String b = "父类非静态变量";
    static {
        System.out.println("父类静态代码块!");
    }
    
    {
        System.out.println("父类非静态代码块!");
    }
    
    public father(){
        System.out.println("父类构造方法");
    }
}

执行结果:

                 

猜你喜欢

转载自blog.csdn.net/weixin_42218884/article/details/82084725