【发布时间】:2012-02-07 05:39:24
【问题描述】:
我想知道在 java 中是否有一种方法(纯代码,而不是一些 Eclipse 的东西)来“语法糖”重复 try catch 代码。也就是说,我必须包装一堆函数
public void foo(){
try{
// bla
} catch (Exception e) {
System.out.println("caught exception:");
e.printStackTrace();
}
}
public void bar(){
try{
// other bla
} catch (Exception e) {
System.out.println("caught exception:");
e.printStackTrace();
}
}
等等。我想写
@excepted public void foo(){
// bla
}
@excepted public void bar(){
// other bla
}
我认为这种类型的糖在 python 中是可能的。用Java可以吗?
【问题讨论】:
-
捕获并将异常转储到标准输出通常是一个糟糕的主意。相反,要么不 捕获异常(将其留给调用代码),要么酌情处理它。没有真正的抽象可用于“酌情处理”,因为它取决于“bla”的内容。
-
如果您不打算做任何特定的事情来处理未捕获的异常,您可以将整个程序包装在一个 try/catch 中
-
捕获一般的
Exception通常也是一个糟糕的主意,除非您正在编写某种框架代码。
标签: java try-catch syntactic-sugar