java程序初始化顺序

一. 初始化三原则

  1. 静态对象(变量)优于非静态对象(变量),且静态对象(变量)只初始化一次,非静态对象(变量)可能初始化多次;
  2. 父类优与子类;
  3. 按照成员变量的定义顺序初始化。

二. 代码示例

  1. 父类

    public class Father {
        static {
            System.out.println("父静态代码块");
        }
    
        {
            System.out.println("父非静态代码块");
        }
    
        public Father(){
            System.out.println("父构造器");
        }
    }
    
  2. 子类

    public class Son extends Father {
        static {
            System.out.println("子静态代码块");
        }
    
        {
            System.out.println("子非静态代码块");
        }
    
        public Son(){
            System.out.println("子构造器");
        }
    
        public static void main(String[] args) {
            new Son();
        }
    }
    
  3. 运行结果
    在这里插入图片描述

发布了20 篇原创文章 · 获赞 1 · 访问量 284
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览