gpt4 book ai didi

Java:是否可以使 try/catch 更短?

转载 作者:行者123 更新时间:2023-12-01 18:16:00 25 4
gpt4 key购买 nike

例如:

try {
Thread.sleep(333);
} catch (InterruptedException e) {
e.printStackTrace();
}

我可以使用像 trySleep(Thread.sleep(333)); 这样的创建方法以某种方式使用上面的 try/catch 吗?它的作用与原始尝试完全相同?

使用示例:

public class Test implements Runnable {

public Test() {
Thread thisThread = new Thread(this);
thisThread.start();
}

@Override
public void run() {
while (true){
System.out.println("Testing");
trySleep(Thread.sleep(333));
}
}

public void trySleep(/*Thread object*/){
//Code for try/catch
}

public static void main(String[] args) {
new Test();
}

}

当然上面的代码不会编译,这只是为了问题。

我想要这种东西的原因是因为我发现 try/catch 的东西非常困惑并且读起来很烦人。

最佳答案

您可以将 Thread.sleep 包装在一个函数中,该函数将任何异常重新抛出为运行时异常(或任何未捕获的异常)。

public static void trySleep(long millis) {
try {
Thread.sleep(millis);
} catch (InterruptedException e) {
throw new RuntimeException("Interrupted during sleep", e);
}
}

关于Java:是否可以使 try/catch 更短?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29463175/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com