Java implements 关键字
实例
interface
接口是一个抽象的"class"类,用于将相关方法与"empty"空体分组:
要访问接口方法,接口必须由另一个具有 implements
关键字(而不是
extends
)的类"实现"(类似于继承)。接口方法的主体由"implement"类提供:
// 接口
interface Animal {
public void animalSound(); // 接口方法(没有主体)
public void sleep(); // 接口方法(没有主体)
}
// Pig "implements" the Animal interface
class Pig implements Animal {
public void animalSound() {
// 这里提供了 animalSound() 的主体
System.out.println("The pig says: wee wee");
}
public void sleep() {
// sleep() 的主体在此处提供
System.out.println("Zzz");
}
}
class MyMainClass {
public static void main(String[] args) {
Pig myPig = new Pig(); // 创建 Pig 对象
myPig.animalSound();
myPig.sleep();
}
}
定义和用法
implements
关键字用于实现interface
接口。
interface
关键字用于声明仅包含抽象方法的特殊类型的类。
要访问接口方法,接口必须由另一个具有implements
关键字(而不是
extends
)的类"实现"(类似于继承)。接口方法的主体由"implement"类提供。
关于接口的说明:
- 它不能用于创建对象(在上面的示例中,不可能在MyMain类中创建"Animal"对象)
- 接口方法没有主体-主体由"implement"类提供
- 在实现接口时,必须重写其所有方法
- 默认情况下,接口方法是
abstract
抽象的和public
公共的 - 接口属性默认为
public
,static
,final
- 接口不能包含构造函数(因为它不能用于创建对象)
为什么以及何时使用接口?
为了实现安全性-隐藏某些细节,只显示对象(接口)的重要细节。
Java不支持"多重继承"(一个类只能从一个超类继承)。但是,它可以通过接口实现,因为该类可以实现多个接口。
注释: 要实现多个接口,请用逗号分隔它们(请参见下面的示例)。
多接口
要实现多个接口,请用逗号分隔:
实例
interface FirstInterface {
public void myMethod(); // 接口方法
}
interface SecondInterface {
public void myOtherMethod(); // 接口方法
}
// 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 Interface 教程。