Joh*_*erg 2 java initialization
有什么方法可以确保在java中调用init方法?我看到的替代方案是
NullPointerExceptionpublic void foo() {
     if (!inited) {
         throw new IllegalArgumentException("not initalized");
     }
     ...
}
public void foo() {
     if (!inited) {
         throw new IllegalArgumentException("not initalized");
     }
     fooInternal();
}
private void fooInternal(){ ... };
public void foo() {
     init();
     ...
}
public void init() {
     if(!inited) {
         ...
     }
}
public void foo() {
     if (!inited) {
         init();
     }
     ...
}
大多数这些方法都非常冗长,降低了整体可读性.
如果初始化是使用合同抛出的一部分,IllegalStateException因为类的客户端没有使它转换到正确的"初始化"状态......
是否在创建时初始化取决于它的使用方式.例如,如果Spring Application Application可能会使用它,那么您将需要推迟初始化.
| 归档时间: | 
 | 
| 查看次数: | 5929 次 | 
| 最近记录: |