首先,我遇到了类似的问题,但无法得到我的答案,例如 - Why does Thread implement Runnable?
所以我的问题是Runnable只包含run方法,其中有Thread类本身,那么为什么Thread Class实现Runnable Interface以及实现Runnable为Thread类提供的功能,如果Thread类没有实现Runnable会发生什么。
答案 0 :(得分:0)
" Runnable接口应由任何其实例由线程执行的类实现。 [...] 此接口旨在为希望在活动时执行代码的对象提供通用协议。例如,Runnable由Thread类实现。"
但我认为你正在寻找的是here。给出的答案是"后向兼容性"。 有时Java需要做出选择,他们总是选择处理后向兼容性的解决方案。
答案 1 :(得分:-1)
如果Thread类没有实现Runnable,那么Thread类将没有run方法。然后jvm根本不会将它视为一个线程。