静态

静态最终域初始化时抛异常的问题

有时候需要一些预先创建好的对象以便别的类直接使用,这些对象通常都是静态最终常量(static final),通常都是这样创建的:

  1. package org.supermmx.example.misc;
  2.  
  3. public class StaticFinalException {
  4.     public static final Test TEST_1 = new Test("value1");
  5. }
  6.  
  7. class Test {
  8.     public Test(String value) {
  9.     }
  10. }

但如果在构造函数中声明有异常抛出的话,会怎么样呢?

  1. package org.supermmx.example.misc;
  2.  
  3. public class StaticFinalException {
  4.     public static final Test TEST_1 = new Test("value1");
  5. }
  6.  
  7. class Test {
  8.     public Test(String value) throws Exception {
  9.     }
  10. }

编译的结果如下:
 

Syndicate content