问题描述
|
这个问题已经在这里有了答案:
解决方法
静态初始值设定项不会引发检查异常,因为类的初始化可以发生在代码中有效的任意位置,在该位置将不会发生检查异常。
静态初始值设定项可能引发未经检查的异常,这将导致无法正确初始化该类并阻止使用该类。但是,这样做将导致难以调试的问题。
规则在JLS的§8.7静态初始化程序中:
静态初始化程序能够通过检查异常(§11.2)突然完成(§14.1,§15.6),这是编译时错误。