zoukankan      html  css  js  c++  java
  • java 静态初始化块,初始化块,构造器执行顺序

    public class Test1 {
      static{
       System.out.println("执行静态初始化块test1...");
      }
      {
        System.out.println("执行初始化块test1");
      }
      public Test1(){
        System.out.println("执行test1构造函数");
      }
    }

    public class Test2 extends Test1{
      static{
       System.out.println("执行静态初始化块test2...");
     }
     {
      System.out.println("执行初始化块test2");
     }
     public Test2(){
      System.out.println("执行test2构造函数");
     }
    }

    public class Test3 extends Test2{
       static{
          System.out.println("执行静态初始化块test3...");
       }
       {
         System.out.println("执行初始化块test3");
       }
       public Test3(){
         System.out.println("执行test3构造函数");
       }
    }

    ----------------------------------------------------------------------------------------------------

    public class Test {
        public static void main(String[] args){
            Test3 t = new Test3();
        }
    }

    结果:

    执行静态初始化块test1...
    执行静态初始化块test2...
    执行静态初始化块test3...
    执行初始化块test1
    执行test1构造函数
    执行初始化块test2
    执行test2构造函数
    执行初始化块test3
    执行test3构造函数

  • 相关阅读:
    python 安装与pip安装
    使用通配符来解决数据1和11、12/13/14的问题
    数据库中一行变多行,拆分数据
    15-哈希表 HashTable
    13-自平衡二分搜索树 AVLTree
    12-并查集 UnionFind
    11-字典树 Trie
    10-线段树 Segment Tree
    09-堆 Heap(最大堆)
    08-映射 Map
  • 原文地址:https://www.cnblogs.com/ZL0508/p/7089624.html
Copyright © 2011-2022 走看看