JDK8版本后--接口成员特点

JDK8版本后–接口成员特点:

1.允许在接口中定义非抽象方法,但是需要使用关键字default修 饰,这些方法就是默认方法

作用:解决接口升级问题:即在丰富接口的同时,又不需要去修改实现类代码
【如果一个接口需要升级,需要添加方法,这个时候如果你添加抽象方法,那么所有实现类都会报错了,都必须去重写新接入的方法】

  • 接口中默认方法的定义格式:
    格式:public default 返回值类型 方法名(参数列表){}
    范例:public default void show(参数列表){} —另外 public是默认加上的,可以省略,但是实现类的重写方法不能省略

​ 接口中默认方法的注意事项:
* 默认方法不是抽象方法,所以不强制被重写,但是可以被重写,重写的时候去掉default关键字
* public可以省略,default不能省略
* 如果实现了多个接口,多个接口存在相同的方法声明,实现类此时就必须对该方法进行重写,而且重写方法中不需要default关键字
–这样的话重名的方法内容到底是啥,取决于我们的重写了,避免了逻辑冲突
–即在main方法中怎么调用方法的时候,那个方法反应呢?

2.接口中允许定义static静态方法

  • 接口中静态方法的注意事项:
    1.静态方法中只能通过接口名调用,不能通过实现类对象或者实现类名调用
    2.public可以省略,static不可以省略
  • 如果实现类实现了两个接口,且接口中有重名的方法怎么办?
    –不用考虑!反正只能通过接口名调用,不会有什么逻辑冲突

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值