对于Runnable中的run方法,如何修复编译器问题“方法不会覆盖其超类@Override的方法”?

时间:2018-02-14 12:22:46

标签: java multithreading concurrency runnable

我正在尝试使用Java中的Runnable对象创建一个基本Thread。以下是我的代码:

git fsck

然而,编译器引发了一个问题: 方法不会覆盖超类@Override

中的方法

我该如何解决这个问题?

编辑:

我也尝试过以下代码,它返回相同的问题:

import java.lang.Thread;
import java.lang.Runnable;

public class TestRunnable{
    public static void main(String[] args){
        MyRunnableImplementation r = new MyRunnableImplementation();
        Thread t = new Thread(r);
        t.start();
    }
}

public class MyRunnableImplementation implements Runnable {
    @Override
    public void run() {
        System.out.println("Testing");
    }
}

2 个答案:

答案 0 :(得分:1)

没有两个公共类可以驻留在同一个java源中;因此@boobalan_gnanasekaran的答案。

Runnable也是一个界面。在真正的旧版本的java @Override中只允许方法。所以确保java版本没问题。我建议尝试一些更现代的结构:

Optional<String> opt = Optional.empty();

如果没有编译,请更新java版本。

答案 1 :(得分:0)

从行public中删除public class MyRunnableImplementation implements Runnable {..个关键字;这可能会清理代码