Day_8 接口

Day 8 接口

接口的语法

接口相当于特殊的抽象类,定义方式、组成部分与抽象类类似。

​ 使用interface关键字定义接口

​ 没有构造方法,不能创建对象

​ 只能定义:公开静态常量、公开抽象方法

与抽象类的异同

相同不同
可编译成字节码文件所有属性都是公开静态常量,隐式使用public static final修饰
不能创建对象所有方法都是公开抽象方法,隐式使用public abstract修饰
可以作为引用类型没有构造方法、动态代码块、静态代码块
具备Object类中所定义的方法

什么是接口

微观概念:接口是一种能力和约定

​ 接口的定义:代表某种能力

​ 方法的定义:能力的具体要求

经验:

java为单继承,当父类的方法种类无法满足子类需求时,可实现接口扩充子类能力

接口支持多实现,可为类扩充多种能力。

接口规范

任何类在实现接口时,必须实现接口中所有的抽象方法,否则此类为抽象类。

实现接口中的抽象方法时,访问修饰符必须是public。

接口引用

同父类一样,接口也可声明为引用,并指向实现类对象。

注意:

仅可调用接口中所声明的方法,不可调用实现类中独有的方法。

可强转回实现类本身类型,进行独有方法调用。

接口的多态

不同引用类型,仅可调用自身类型中所声明的方法。

常见关系

类与类

​ 单继承

​ extends 父类名称
类与接口

​ 多实现

​ implements 接口名称1,接口名称2,接口名称n

接口与接口

​ 多继承

​ extends 父接口1,父接口2,父接口n

常量接口

将多个常用于表示状态或固定值的变量,以静态常量的形式定义在接口中统一管理,提高代码可读性。

回调原理

接口回调:先有接口的使用者,后有接口的实现者。

小结

接口的好处:

​ 程序的耦合度降低

​ 更自然的使用多态

​ 设计与实现完全分离

​ 更容易搭建程序框架

​ 更容易更换具体实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值