// Flyable インターフェイスの宣言
interface Flyable {
void fly();
}
// Bird クラスの宣言と Flyable インターフェイスの実装
class Bird implements Flyable {
@Override
public void fly() {
System.out.println("Flying");
}
void makeSound() {
// 適切な実装
}
}
// Sparrow クラスの宣言と Bird クラスの継承
class Sparrow extends Bird {
// makeSound メソッドのオーバーライド
@Override
void makeSound() {
System.out.println("Chirp!");
}
// Flyable インターフェイスの fly メソッドの実装
@Override
public void fly() {
System.out.println("Flying like a sparrow.");
}
}
この例では、Flyable
インターフェイスを実装した Bird
クラスと、Bird
クラスを継承した Sparrow
クラスがあります。Sparrow
クラスでは makeSound
メソッドをオーバーライドして「Chirp!」と表示し、fly
メソッドを実装して「Flying like a sparrow.」と表示します。