zoukankan      html  css  js  c++  java
  • jvm对类的加载顺序测试

    父类

    package test;

    public class Parent {
        
        public static int a = menthod2();
        public int b = 11;
        {
            System.out.println("父快类的非静态块");
        }
        
        static {
            System.out.println("父类的静态块");
        }
        
        public Parent(){
            System.out.println("父类的构造函数");
        }
        
        public static void menthod(){
            System.out.println("父类的静态方法");
        }
        
        public static int   menthod2(){
            System.out.println("父类的静态变量");
            return 10;
        }
        
        public void menthod1(){
            System.out.println("父类的非静态方法");
        }

    }

    子类

    package test;

    public class Parent {
        
        public static int a = menthod2();
        public int b = 11;
        {
            System.out.println("父快类的非静态块");
        }
        
        static {
            System.out.println("父类的静态块");
        }
        
        public Parent(){
            System.out.println("父类的构造函数");
        }
        
        public static void menthod(){
            System.out.println("父类的静态方法");
        }
        
        public static int   menthod2(){
            System.out.println("父类的静态变量");
            return 10;
        }
        
        public void menthod1(){
            System.out.println("父类的非静态方法");
        }

    }

    测试得到

    public class Test {
        public static void main(String[] args) {
            Child child = new Child();
            child.menthod();
            
        }

    }

    输出:

    父类的静态变量
    父类的静态块
    子类的静态变量
    子类的静态块
    父快类的非静态块
    父类的构造函数
    子类的非静态块
    子类的构造函数
    子类的静态方法

    说明Jvm的执行顺序是:

    父类的静态变量----->父类的静态块----->子类的静态变量------>子类静态块------>父类的非静态块------>父类的构造函数------>子类的非静态块---子类的构造函数

    ----->子类的静态方法

    注意: char类型的基本类型初始化的时候值为null

       一个构造函数中只能调用另外一个构造函数,不能同时调用两个构造函数..

  • 相关阅读:
    能大大提升工作效率和时间效率的9个重要习惯
    hibernate的校验
    8. semahpore原理
    chklist
    android textview 自动换行 整齐排版
    fiddler接口测试,js代码修改日志展示(埋点用)
    Python模块之 tqdm进度条
    Python抓取网页到本地
    Python模块之 clint 进度条
    python windows下pip安装错误whl文件安装错误
  • 原文地址:https://www.cnblogs.com/working/p/3585269.html
Copyright © 2011-2022 走看看