java接口详解
接口(interface): 有时必须从几个类中派生出一个子类,继承它们所有的属性和方法。但是,Java不支持多重继承。有了接口,就可以得到多重继承的效果。
接口(interface)是抽象方法和常量值的定义的集合。
//定义接口
public interface LiveAble {
//静态与.class 文件相关,只能使用接口名调用,不可以通过实现类的类名或者实现类的对象调用
public static void run(){
System.out.println("跑起来~~~");
}
//定义默认方法:可以继承(类中可以什么都不写),可以重写
public default void fly(){
System.out.println("天上飞");
}
// 定义抽象方法
public abstract void eat();
}
//定义实现类
public class Animal implements LiveAble {
//重写默认方法
@Override
public void fly() {
System.out.println("自由自在的飞");
}
//实现类必须重写抽象方法
@Override
public void eat() {
System.out.println("吃东西");
}
}
从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现。
面向对象的语言基本上都可以实现接口。C++中,没有特定的关键词如
interface来定义接口类,但是可以间接通过多继承抽象类来实现。
浙公网安备 33010602011771号