java - 为什么在 public void run() 中这里不需要 try-catch?

标签 java android multithreading exception runnable

我有一个简单的启动画面程序。我在其中创建了一个实现 Runnable 并覆盖 run() 方法的类。

class mysplash implements Runnable {
    @Override
    public void run() {
        try {
            Intent i = new Intent(getApplicationContext(), MainActivity.class);
            startActivity(i);
            finish();
        } catch (InterruptedException e) {
            System.out.println("exception");
        }
    }
}

如果我编写以下代码,Eclipse 会显示错误:

Remove catch clause

我之前有 Java 和 AFAIK 经验,我们应该在 try - catch block 中编写 run() 方法的内容,以避免线程出现 interruptedexception

我是 Android 新手。谁能解释为什么 Java 中的 run() 方法需要异常处理,而 Android 中不需要?

最佳答案

这是因为 InterruptedException 永远不会从您的 try 代码块中抛出。

关于java - 为什么在 public void run() 中这里不需要 try-catch?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25822720/

相关文章:

java.lang.ClassCastException : java.net.URI 无法转换为 java.net.URL

android - Android 的自定义内容提供程序? (修改记事本示例)

Python 多线程和 PostgreSQL

c# - .NET Parallel.ForEach、StreamWriter 输出 + 线程安全

java - 使用Java源代码进行调试

java - org.glassfish.jersey.servlet.ServletContainer 类NotFoundException

Java - 在 Graphics2D 中获取新的旋转点

java - Android:无法添加附件: `SecurityException when openAssetFileDescriptor`

android - 在 native 日历 View 中突出显示事件日期

ios - 核心数据 : load data in background and save