我是一名了解一些 Java 的技术作家,我的任务是跟踪一些旧的、高度线程化的 Java 代码中的线程。该代码的原作者已经不在了,所以我们正试图弄清楚它是如何工作的。我遇到了一个扩展Thread
但不实现run()
方法的类。扩展Thread
但不实施run()
(如果有的话)有什么意义?
我确实注意到这个类的方法之一是synchronized
:
public synchronized void incrementCounter() {
this.counter++;
}
但所有其他方法似乎都是非同步的。事实上,大多数其他方法只是 getter 和 setter。为了声明一个方法,扩展Thread
或实现是必要的吗?谢谢!Runnable
synchronized