本文转载自: https://www.cnblogs.com/caolaoshi/p/7824748.html static{}块,会且仅会在类被加载时执行一次,多用于定义静态变量或执行静态方法. 什么是类加载?即JAVA虚拟机通过输入流将磁盘中的字节码(.class)文件读入虚拟机并保存起来的过程,在一个生命周期中一个类只被加载一次. 这并不意味着会立马加载,原则是延迟记载,能少加载就少加载,尽量减少虚拟机空间的使用. 加载时机: 1.第一次创建此类对象 2.调用此类静态方法或访问静态属性 3…