iteye_1218 2011-03-07 13:26
浏览 402
已采纳

大家说说Java的Runnable接口

我是想说, 其run方法前面为啥要加个abstract?看源码时偶然注意到的:

 

public interface Runnable {

    public abstract void run();

}

 

  • 写回答

30条回答 默认 最新

  • rednaxelafx 2011-03-07 13:26
    关注

    这段代码在JDK 1.0时代已经是如此了。java.lang.Runnable的代码部分从JDK 1.0.2到JDK6都一直没有变过,只有注释里的说明有少量更新而已。已经能用就没人想去改了…吧。

    不过即便是当时的Java语言规范也是不鼓励这种写法的。[url=http://java.sun.com/docs/books/jls/first_edition/html/9.doc.html#78651]Java语言规范第一版:9.4 抽象方法声明[/url]
    [quote]Every method declaration in the body of an interface is implicitly abstract, so its body is always represented by a semicolon, not a block. For compatibility with older versions of Java, it is permitted but discouraged, as a matter of style, to redundantly specify the abstract modifier for methods declared in interfaces.

    Every method declaration in the body of an interface is implicitly public. It is permitted, but strongly discouraged as a matter of style, to redundantly specify the public modifier for interface methods.[/quote]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(29条)

报告相同问题?

悬赏问题

  • ¥15 孟德尔随机化结果不一致
  • ¥15 深度学习残差模块模型
  • ¥50 怎么判断同步时序逻辑电路和异步时序逻辑电路
  • ¥15 差动电流二次谐波的含量Matlab计算
  • ¥15 Can/caned 总线错误问题,错误显示控制器要发1,结果总线检测到0
  • ¥15 C#如何调用串口数据
  • ¥15 MATLAB与单片机串口通信
  • ¥15 L76k模块的GPS的使用
  • ¥15 请帮我看一看数电项目如何设计
  • ¥23 (标签-bug|关键词-密码错误加密)