为什么Eclipse标记接口方法是公共抽象的?

时间:2013-01-29 07:28:13

标签: java eclipse interface

使用Eclipse的“ Extract Interface ”重构时,默认情况下会声明方法public abstract。为什么?接口上的public修饰符完全是冗余的,abstract在接口声明中似乎也毫无意义。

1 个答案:

答案 0 :(得分:7)

这些关键字确实是多余的。我个人不会在这种情况下使用它们,但我可以看到为什么有人可能更愿意包含它们。

JLS explicitly discourages这种做法:

  

允许但不鼓励作为样式,为接口中声明的方法冗余指定public和/或abstract修饰符。

在我的Eclipse版本(Juno SR1)中,Extract Interface对话框中有两个选项:

  • 将接口方法声明为public;
  • 将接口方法声明为abstract

如果取消它们,Eclipse在提取界面时不应再包含这两个关键字。

有待处理的Eclipse bug report来清理冗余修改。