zoukankan      html  css  js  c++  java
  • 类初始化顺序

    package staticinit.one;
    
    public class ClassInitOrder {
        public static void main(String[] args) {
            new Son();
            /*
             * Father staticVal print()...
             * Father staticBlock print()...
             * Son staticVal print()...
             * Son staticBlock print()...
             * Father instanceVal print()...
             * Father instanceBlock print()...
             * Father constructor...
             * Son instanceVal print()...
             * Son instanceBlock print()...
             * Son constructor...
             */
        }
    }
    
    class Father {
    
        private static String staticVal = print("staticVal");
        private String instanceVal = print("instanceVal");
        {
            print("instanceBlock");
        }
        static {
            print("staticBlock");
        }
    
        public Father() {
            System.out.println("Father constructor...");
        }
    
        public static String print(String name) {
            System.out.println("Father " + name + " print()...");
            return null;
        }
    }
    
    class Son extends Father {
    
        private static String staticVal = print("staticVal");
        private String instanceVal = print("instanceVal");
        {
            print("instanceBlock");
        }
        static {
            print("staticBlock");
        }
    
        public Son() {
            System.out.println("Son constructor...");
        }
    
        public static String print(String name) {
            System.out.println("Son " + name + " print()...");
            return null;
        }
    
    }

    注:域和块的初始化先后顺序取决于其在类中的位置先后。(类的域、块与类的方法有何却别,为何域和块会自动被初始化,而方法不会被初始化?)
    这里写图片描述

  • 相关阅读:
    点餐系统的设计与实现注意点与解决办法
    不借助临时变量交换两个数值
    python2.7之乱码问题
    netty-学习笔记
    每天一个linux命令---curl
    每天一个linux命令---useradd
    webservice 学习笔记
    每天一个linux命令---kill
    XML解析
    每天一个linux命令---tar
  • 原文地址:https://www.cnblogs.com/wjc920/p/9256176.html
Copyright © 2011-2022 走看看