什么是抽象接口根据java docs中的定义?

时间:2014-07-09 18:02:39

标签: java

因为我知道接口是完全抽象的类,其方法默认是公共的,数据成员是public static final。 那么,什么是抽象界面?

public abstract interface Servlet {
public abstract void init(ServletConfig paramServletConfig)
        throws ServletException;

public abstract ServletConfig getServletConfig();

public abstract void service(ServletRequest paramServletRequest,
        ServletResponse paramServletResponse) throws ServletException,
        IOException;

public abstract String getServletInfo();

public abstract void destroy();

}

3 个答案:

答案 0 :(得分:2)

默认情况下,接口及其方法是抽象的。添加抽象并不意味着任何不同的

public abstract interface example {
}

相同
public interface example {
}

虽然旧版本的java需要一个界面才能拥有关键字' abstract'。它现在已经过时,不应该使用

答案 1 :(得分:0)

默认情况下,接口是抽象的,将abstract关键字附加到接口&它的方法签名毫无意义。

答案 2 :(得分:0)

接口是final fields + abstract methods的封装。

抽象类可能有final fields + variables + concrete methods + abstract methods

因此,当我们在抽象类中声明抽象方法时,我们需要编写abstract关键字,如果我们要将类声明为抽象,那么我们需要向其添加abstract关键字。

但是在界面的情况下,他们只会有抽象的方法。因此,使用接口或其方法编写abstract关键字不是强制性的。它们默认是抽象的。

Java8中的新功能

Interfaces can have default methods too