在 Java 中,implements
關鍵字用于實現一個接口。一個類可以實現多個接口,但不能直接繼承另一個類。如果你想要實現類似繼承的功能,可以使用抽象類(abstract class
)。抽象類可以包含抽象方法和非抽象方法,子類必須實現抽象方法,否則它們也必須被聲明為抽象類。
這是一個簡單的例子來說明接口和抽象類的區別:
// 定義一個接口
interface Animal {
void eat();
}
// 定義一個抽象類
abstract class Mammal {
abstract void sleep();
void breathe() {
System.out.println("I can breathe.");
}
}
// 實現接口和繼承抽象類的類
class Dog extends Mammal implements Animal {
@Override
public void eat() {
System.out.println("I can eat.");
}
@Override
void sleep() {
System.out.println("I can sleep.");
}
}
public class Main {
public static void main(String[] args) {
Dog dog = new Dog();
dog.eat(); // 輸出 "I can eat."
dog.sleep(); // 輸出 "I can sleep."
dog.breathe(); // 輸出 "I can breathe."
}
}
在這個例子中,Dog
類實現了 Animal
接口并繼承了 Mammal
抽象類。