Interface接口
接口:
接口是抽象方法和常量的集合
语法规则
interface 接口名{
常量;
抽象方法;
}
public class OOPDemo03 { public static void main(String[] args) { //接口不能被实例化 //InterD interD = new InterD(); } } interface InterD{ //静态常量 public String NAME="张三";
//抽象方法 public void eat(); /** * JDK1.8之后可以声明静态方法 */ public static void sop(){ System.out.println("aaa"); } /** * JDK1.8之后可以声明default方法 */ default void q(){ System.out.println("qqq"); } }
接口的特点
接口使用interface关键字
接口由常量和抽象方法组成
常量:默认的接口中的成员变量都是省略 public static final 这几个关键字的
抽象方法:默认接口中的成员方法都是省略 public abstract 的
接口不能被实例化,需要通过实现类来实现
接口中存在抽象方法,表明接口本身也是一个抽象类,所以不能被实例化,我们只能通过接口的实现类来实现,
通过Implements关键字进行实现
接口可以多实现
相比较继承的单继承而言,接口在这些方面显得很灵活,支持多实现
接口可以多继承
接口是一种规范,一种标准,同时接口也是灵活的
类和接口的关系
类和类:单继承,不可以实现
类和接口:单继承,多实现
接口和接口:多继承,不能多实现
继承和接口的使用场景
我们设计一个非常复杂而又无法实现的类的时候可以使用继承,我们重新开始编写
一些简单的功能或者指定一些标准的时候使用接口,开发中一般会采用面向接口编程,
抽象类是模板,接口是规范