接口(Interface)和抽象类(Abstract Class)是面向对象编程中的两个重要概念,它们都用于实现抽象和多态。尽管它们有一些相似之处,但也有明显的区别。以下是接口和抽象类的主要区别:
interface
关键字定义。abstract
关键字定义。implements
关键字。extends
关键字。public static final
)。public abstract
)。default
方法)和静态方法(static
方法)。public interface Animal {
void eat();
void sleep();
default void breathe() {
System.out.println("Breathing...");
}
static void move() {
System.out.println("Moving...");
}
}
public abstract class Animal {
protected String name;
public Animal(String name) {
this.name = name;
}
public abstract void eat();
public abstract void sleep();
public void breathe() {
System.out.println("Breathing...");
}
public static void move() {
System.out.println("Moving...");
}
}
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。