zoukankan      html  css  js  c++  java
  • Java代码执行顺序

    代码执行顺序

    当父类与子类都有静态代码块,构造方法和构造代码块的时候,程序的执行顺序如下

    父类静态代码块->子类静态代码块->父类构造方法->父类构造代码块码块->子类构造方法->子类构造代码块

    (先有父亲,后有孩子)

    如果是多层的继承关系,就优先执行高层的父类,再递减下来
    因为静态代码块在jvm虚拟机加载类的时候就加载,而且静态代码块只被执行一次

      class fu{
        {
            System.out.println("这是父类构造代码块");
        }
        static {
            System.out.println("这是父类静态代码块");
        }
        public fu() {
            System.out.println("这是父类构造方法");
        }
    
    
    }
    class zi extends fu{
        {
            System.out.println("这是子类构造代码块");
        }
        static {
            System.out.println("这是子类静态代码块");
        }
        public zi() {
            System.out.println("这是子类构造方法");
        }
    }
    public class Static {
        public static void main(String[] args){
    
            zi z =new zi();
        }
    }
    

    执行结果

    这是父类静态代码块
    这是子类静态代码块
    这是父类构造代码块
    这是父类构造方法
    这是子类构造代码块
    这是子类构造方法
    
  • 相关阅读:
    第十一周上机练习
    JAVA第十周上机练习
    JAVA第九周上机练习
    JAVA第八周作业
    JAVA第八周上机作业
    JAVA第七周作业
    Java第七周上机练习
    Java第六周作业
    JAVA第六周上机练习
    34-指针与二维数组
  • 原文地址:https://www.cnblogs.com/blackmlik/p/12075457.html
Copyright © 2011-2022 走看看