java - Java 中的 try-catch 语法糖

标签 java try-catch syntactic-sugar

我想知道在 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 中可以吗?

最佳答案

你不能像你的伪代码建议的那样用注释做一些事情,但你可以让方法抛出:

public void bar() throws Exception {}

让它一路冒泡,在任何你想要的地方捕获它,在调用树的更高层(或者如果你愿意,也可以在调用栈的下游)。

关于java - Java 中的 try-catch 语法糖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8809560/

相关文章:

java - OkHttp 的 .string() 和 .toString() 有什么区别?

java - Spring ExceptionHandler 未返回有效的响应代码

c# - 在 C# 中抛出或不抛出异常

javascript - 我可以在 es6 数组解构中使用什么作为占位符?

java - 调用main方法

java - 让异常在调用堆栈中向上移动有什么值(value)?

java - 如何修改我的代码以在外部打印在 try-catch 内初始化的变量?

perl - 有没有更干净的方法可以有条件地将 'last' 排除在这个 Perl 循环之外?

language-agnostic - 语法糖与功能

java - Hbase 1.0.0连接池