目录

JAVA interface 关键字

❮ Java 关键字


示例

一个interface是一个抽象 "class",用于将相关方法与 "empty" 主体分组:

要访问接口方法,该接口必须由另一个类"implemented"(有点像继承)implements关键字(而不是extends)。接口方法的主体由 "implement" 类提供:

// interface
interface Animal {
  public void animalSound(); // interface method (does not have a body)
  public void sleep(); // interface method (does not have a body)
}

// Pig "implements" the Animal interface
class Pig implements Animal {
  public void animalSound() {
    // The body of animalSound() is provided here
    System.out.println("The pig says: wee wee");
  }
  public void sleep() {
    // The body of sleep() is provided here
    System.out.println("Zzz");
  }
}

class MyMainClass {
  public static void main(String[] args) {
    Pig myPig = new Pig();  // Create a Pig object
    myPig.animalSound();
    myPig.sleep();
  }
}

亲自试一试 »


定义和用法

这个interface关键字用于声明仅包含抽象方法的特殊类型的类。

要访问接口方法,该接口必须由另一个类"implemented"(有点像继承)implements关键字(而不是extends)。接口方法的主体由"implement" 类提供。

接口注意事项:

  • 不能用于创建对象(在上面的示例中,不可能在 MyMainClass 中创建 "Animal" 对象)
  • 接口方法没有主体 - 主体由 "implement" 类提供
  • 在实现接口时,您必须重写其所有方法
  • 接口方法默认为abstractpublic
  • 接口属性默认为public,staticfinal
  • 接口不能包含构造函数(因为它不能用于创建对象)

为什么以及何时使用接口?

为了实现安全性 - 隐藏某些细节并仅显示对象(界面)的重要细节。

Java 不支持"multiple inheritance"(一个类只能继承一个超类)。然而,它可以通过接口来实现,因为类可以实施多个接口。笔记:要实现多个接口,请用逗号分隔它们(请参见下面的示例)。


多种接口

要实现多个接口,请用逗号分隔它们:

示例

interface FirstInterface {
  public void myMethod(); // interface method
}

interface SecondInterface {
  public void myOtherMethod(); // interface method
}

// DemoClass "implements" FirstInterface and SecondInterface
class DemoClass implements FirstInterface, SecondInterface {
  public void myMethod() {
    System.out.println("Some text..");
  }
  public void myOtherMethod() {
    System.out.println("Some other text...");
  }
}

class MyMainClass {
  public static void main(String[] args) {
    DemoClass myObj = new DemoClass();
    myObj.myMethod();
    myObj.myOtherMethod();
  }
}

亲自试一试 »


相关页面

阅读有关接口的更多信息Java 接口教程


❮ Java 关键字