当先锋百科网

首页 1 2 3 4 5 6 7

在Java编程中,抽象类和接口都是重要的概念。下面来看一个例题,通过分析答案,加深对抽象类和接口的理解。

题目:请定义一个抽象类Animal,包含成员变量name和age,以及抽象方法eat()。同时,请定义一个接口Flyable,包含抽象方法fly()。另外,请定义一个Bird类,继承自Animal类,并实现Flyable接口,具体实现时在eat()方法中输出“吃虫子”,在fly()方法中输出“我会飞”。请根据以上要求写出相应的代码。

public abstract class Animal {
String name;
int age;
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
public abstract void eat();
}
public interface Flyable {
void fly();
}
public class Bird extends Animal implements Flyable {
public Bird(String name, int age) {
super(name, age);
}
@Override
public void eat() {
System.out.println("吃虫子");
}
@Override
public void fly() {
System.out.println("我会飞");
}
}

在上述代码中,Animal类被定义为抽象类,其中包含一个抽象方法eat(),需要在其子类中进行具体实现。接口Flyable也被定义,其中包含抽象方法fly(),需要在实现该接口的类中实现。Bird类继承Animal类并实现Flyable接口,具体实现时在eat()方法中输出“吃虫子”,在fly()方法中输出“我会飞”。通过这个例题,我们可以很清楚地理解抽象类和接口的作用和用法。