在界面中使用abstract关键字

Ste*_*ume 8 java oop

我知道"公共接口"和"公共抽象接口"之间的区别,但是当应用于方法时有区别吗?

public interface IPluggableUi {
    abstract public JComponent getPanel();
    abstract public void initUi();
}
Run Code Online (Sandbox Code Playgroud)

要么

public interface IPluggableUi {
    public JComponent getPanel();
    public void initUi();
}
Run Code Online (Sandbox Code Playgroud)

Tom*_*Tom 24

在接口中声明的方法默认为public和abstract.

然而,人们可以:

public interface myInterface{
     public abstract void myMethod();
}
Run Code Online (Sandbox Code Playgroud)

但是,不鼓励使用这些改性剂.抽象修饰符应用于接口声明也是如此.

特别是关于你的问题:

"为了与Java平台的旧版本兼容,允许使用它,但不鼓励,但作为一种风格,不要为接口中声明的方法冗余地指定抽象修饰符."

来源:http: //java.sun.com/docs/books/jls/second_edition/html/interfaces.doc.html

第9.4节:抽象方法声明.


IAd*_*ter 4

不,你也可以写

public interface IPluggableUi {
    JComponent getPanel();
    void initUi();
}
Run Code Online (Sandbox Code Playgroud)

这是同一件事