// 定义一个接口,使用 interface 关键字
interface Animal {
// 接口中可以定义常量,默认是 public static final
int LEGS = 4;
// 接口中可以定义抽象方法,默认是 public abstract
void makeSound();
// 接口中可以定义默认方法,默认方法可以有具体实现
default void eat() {
System.out.println("This animal eats food.");
}
// 接口中可以定义静态方法,静态方法属于接口本身
static void breathe() {
System.out.println("This animal breathes.");
}
}
// 实现接口的类需要实现接口中的抽象方法
class Dog implements Animal {
// 实现接口中的抽象方法
@Override
public void makeSound() {
System.out.println("Bark");
}
}
public class Main {
public static void main(String[] args) {
Dog dog = new Dog();
dog.makeSound(); // 输出: Bark
dog.eat(); // 输出: This animal eats food.
Animal.breathe(); // 输出: This animal breathes.
}
}
public abstract
,子类必须实现这些方法。default
关键字定义,默认方法可以有具体的实现,子类可以选择重写或直接使用。static
关键字定义,静态方法属于接口本身,可以通过接口名直接调用。implements
关键字实现接口,并且必须实现接口中的所有抽象方法。下一篇:java map.foreach
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站