JVM只为静态变量分配一次内存,在加载类的过程中完成静态变量的内存分配,会执行静态的代码块
在类加载的init阶段,类的类构造器中会收集所有的static块和字段并执行,static块只执行一次,有JVM保证其只执行一次
jvm过程(Java类编译、加载和执行。)
内部类可以用static修饰,final说明不允许其他类来继承这个类。(new 类名.内部类)
static可以用来修饰类的成员方法、类的成员变量,可以编写静态static代码块。
通过下面的方式访问
类名.静态方法名(参数列表...)
类名.静态变量名
父类子类static执行过程的顺序 :考虑方式,
先静态(先父后子(静态变量和静态初始化块是按照他们在类中出现的前后顺序执行)),
然后非静态(先父后子(构造块和变量+父类构造器执行完毕考虑子类))