我有一些代码,使这个结构内检测未检查异常抛出:局部变量可能尚未初始化 - 方法
public void method() {
Object o;
try {
o = new Object();
} catch (Exception e) {
//Processing, several lines
throw new Error(); //Our own unchecked exception
}
doSomething(o);
}
我有,我有相同的代码在catch不少方法块,所以我想提取它到一个方法,以便我可以保存一些行。我的问题是,如果我这样做,我会得到一个编译器错误“ 本地变量o可能没有被初始化”。
public void method() {
Object o;
try {
o = new Object();
} catch (Exception e) {
handleError();
}
//doSomething(o); compiler error
}
private void handleError() throws Error {
//Processing, several lines
throw new Error();
}
有什么解决方法吗?
注:实例变量不需要初始化,但局部变量的方法(内部变量)需要初始化 – gjman2