【JAVA】抽象类与接口
在Java中,抽象类和接口都用于定义抽象行为,但它们之间有显著的不同。
抽象类:
- 可以包含抽象方法和非抽象方法。
- 抽象类不能被实例化。
- 子类使用
extends
关键字继承抽象类。 - 一个子类只能继承一个抽象类。
接口:
- 只能包含抽象方法。
- 接口不能被实例化。
- 类使用
implements
关键字实现接口。 - 一个类可以实现多个接口。
代码示例:
抽象类:
public abstract class Animal {
public abstract void makeSound();
public void sleep() {
System.out.println("Zzz");
}
}
public class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("Woof");
}
}
接口:
public interface Flyable {
void fly();
}
public class Bird implements Flyable {
@Override
public void fly() {
System.out.println("I'm flying!");
}
}
评论已关闭