JAVA基础(一) ——— static 关键字

时间:2021-12-13 22:53:53

1.  静态代码块 保证只创建一次,提升属性的级别为类变量。初始化后独自占用一块内存

2.  静态代码块执行触发条件

  (1).当创建这个类的实例

  (2).当调用这个类的静态变量

  (3).当调用这个类的静态方法

3.  Java中的静态变量和静态代码块是在类加载的时候就执行的,实例化对象时,先声明并实例化变量再执行构造函数。如果子类继承父类,则先执行父类的静态变量和静态代码块,再执行子类的静态变量和静态代码块。同样,接着在执行父类和子类非静态代码块和构造函数。

注意:(静态)变量和(静态)代码块的也是有执行顺序的,与代码书写的顺序一致。在(静态)代码块中可以使用(静态)变量,但是被使用的(静态)变量必须在(静态)代码块前面声明。

 最后给出执行步骤:

  (1)、父类静态变量和静态代码块(先声明的先执行);

  (2)、子类静态变量和静态代码块(先声明的先执行);

  (3)、父类的变量和代码块(先声明的先执行);

  (4)、父类的构造函数;

  (5)、子类的变量和代码块(先声明的先执行);

  (6)、子类的构造函数。

静态方法可以直接使用类名来引用 直接类名.静态方法

摘自 <https://www.cnblogs.com/jj-chenjunjie/p/5331107.html>

写在最后:以上这些总结的内容绝大多数是我从网上以及书上找来的,写在这里是想把自己所学的分享给大家,方便大家学习,同时也有助于自己记忆,如果有哪里不对的恳请指正