我读到静态初始值设定项是在首次加载该类时执行的,并且由于我没有在代码中的任何地方直接引用这些类,因此不会加载它们并且不会执行静态初始值设定项。
这是正确的-除非您在某个地方访问该类,否则不会执行任何代码。创建该类的实例或访问该类的静态属性将导致调用其静态初始化程序,但是否则,将不会运行任何代码。
该规则在调用静态初始值设定项时强制执行顺序,即确保在任何尝试访问该类的任何属性之前始终调用静态初始值设定项,并且还避免了在每个类立即触发每个静态初始值设定项的问题。程序启动。
我不知道有什么方法可以使类或对象上的代码在没有地方访问该类或对象的情况下运行。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)