一、概念

接口是一种能力,接口是一种约定,接口时一种标准。
接口:定义了具备某种能力的接口 约定方法:这种能力的具体要求。
1、接口相当于一个特殊的抽象类
接口中所有的属性都是公开的静态的常量。默认是public static final修饰
接口中有的方法都是公开的抽象方法。默认是public abstract修饰
2、定义接口(通过interface定义)
interface 接口名{}

二、 接口和抽象类的异同点

1、相同点5
都可以编译生成.class文件
都不能创建对象
(抽象类不能创建对象的原因:不够完整,不够具体,一般修饰的是父类)
都可以声明引用
2、 不同点
接口中所有的属性都是公开静态常量(抽象类中的属性没有具体要求)
接口中所有的方法都是公开抽象方法(抽象类中可以有普通方法)
接口中没有构造方法。动态代码块 静态代码块
(抽象类中可以有构造方法,不写默认提供无参的构造方法)
接口与接口之间是多继承,类与类之间是单继承,但是多级继承。

三、接口的应用
父类中提供的都是共性的属性和方法,无法为子类提供特殊的属性和方法。可以通过制定接口的方式为类提供独有的属性和方法
java基础语法-接口
四、接口的实现

接口可以附加给类,一旦一个类实现了一个接口,那么就代表具备了某种能力,也就是一种会干什么的东西。

接口实现的语法: class 类名 extends 父类 implements 接口1,接口2,接口3…接口n{}

注意:
1、一个类实现了一个接口,那么就必须实现接口中所有的抽象方法,否则这个类仍然是一个抽象类
2、接口中的方法都是公开抽象方法,不写默认为public abstract修饰,所以实现类覆盖实现接口中的方法访问修饰符必须是public

java基础语法-接口

接口可以多实现,代表为类扩展了不同的能力。

五、接口引用
接口可以作为声明引用,指向实现类对象。那么通过接口引用仅可调用接口中声明的方法,不可调用实现类中的方法
java基础语法-接口

接口的多态
多种不同的引用都可指向同一个对象,表示看待对象的角度不同,那么仅可调用引用中声明的属性和方法。
接口可以作参数,表示可以接收任一实现了这个接口的实现类对象。

java基础语法-接口

常见的关系
1、类与类之间:单继承
2、类与接口之间 :多实现
3、接口与接口之间:之间的关系是继承,多继承

八、接口的回调
先有接口的使用者,后有接口的实现者。
接口的使用者为工具,预先使用了接口中的抽象方法;在调用工具的时候要求必须提供一个实现类实现接口,实现类实现接口必须实现接口中的抽象方法。在调用的时候,实际上调用的是接口中的方法,只不过存在了一个实现类,执行的是实现类中覆盖之后的方法。

九、接口的好处
1、多继承
2、解耦合(耦合:关联性 强耦合:强关联性 弱耦合:)

分类:

技术点:

相关文章: