接口
接口:体现的思想就是声明[规则]
思路:如果发现一个类,所有的组成,都是抽象方法
没有成员变量
没有普通方法
这种类,我们通常会设计为Java中的接口,因为现在这个类存在的唯一价值,就只是声明规则了
接口用关键字interface来定义
public interface 接口名 {}
接口不能实例化
接口和类之间是实现关系,通过implements关键字表示
public class 类名implements接口名{}
接口的子类(实现类)
要么重写接口中的所有抽象方法
要么是抽象类
例:
interface Inter {
public abstract void show();
public abstract void method();
}
class InterImpl implements Inter{
@Override
public void show(){
System.out.println("show...");
}
@Override
public void method() {
System.out.println("method...");
}
}
接口的成员特点
1. 成员变量 : 只能定义常量,因为系统会默认加入三个关键字
public static final
-这三个关键字没有顺序关系
2.成员方法 :只能是抽象方法,因为系统会默认加入两个关键字
public abstract
3.构造方法 :没有
接口和类之间的各种关系
1.类和类之间 :继承关系,只支持单继承,不支持多维承,但是可以多层继承
2.类和接口之间:实现关系,可以单实现,也可以多实现,甚至可以在继承一个类的同时,实现多个接口
3.接口和接口之间 :继承关系,可以单继承,也可以多继承
抽象类和接口的对比
抽象类:对事物做抽象(描述事物)
接口:对行为抽象(制定规则)
接口可以为程序制定规则,代码更加规范