/**
* 1、类加载到内存(只会加载一次)
* 1.1从上往下执行,只会执行使用static修饰的成员变量和static的代码块
* 1.2使用static修饰的静态方法也会在类加载时初始化,但是不会被执行(被调用)
* 2、new 子类的时候(一个父类,一个子类):
* 2.1 new子类时需要确定子类调用方法的参数个数和参数类型分别是什么来决定于调用子类的哪个方法
* 2.2 当它找个要调用子类的哪个构造方法之后,找第一句是this还是super关键
字(注意:它最终目标找的是super)
* (执行子类的构造方法之前一定是先执行最顶级的父类,然后后进先执行的顺序来初始化类)
* 2.2.1 如果是super表示调用父类的构造方法,调用父类的哪个构造取决于传入的参数类型和参数个数
* 2.2.2 如果是this表示调用本类的构造方法,调用本类的哪个构造取决于传入的参数类型和参数个数
* 2.3在执行构造方法之前(不管是父类还是子类都一样会做的事情)
* 2.3.1 从上往下执行,执行没有使用static修饰(非静态)的成员变量和没有使用static修饰(非静态)的代码块
* 2.3.2 执行完2.3.1之后,执行super过来的对应的构造方法