java 接口认证_关于java8中的接口特性验证

在java8中,已经有了接口的新定义。

在工作中,很少看见在接口中写默认方法。主要是今天见到了有程序在写抽象类,就感觉其实这里用新的接口也是可以的。

所以,针对接口,做一个文档梳理。

一:基本知识说明

1.定义

接口可以包括数据成员,但是数据成员必须是常量,其值一旦被初始化后,是不允许修改的,这些数据成员通常为全局变量。

为了避免在接口中添加新方法后要修改所有的实现类,接口中允许定义默认方法(default方法)。

定义接口需要使用关键字interface

2.java中新特性说明

可以在接口中写default修饰的默认方法

package com.jun.prove.service;

public interface calculate {

int result = 7;

default int add(int a, int b){

return a+b;

}

}

如果调用,则使用其实现的子类对象进行调用

3.可以写static方法

这种情况就相当于工具类,使用类名直接调用就可以了

二:一些可能会遇到的场景,关于多继承实现

1.重写

如果实现类重写了接口中的默认方法,调用时,仍然调用的是重写以后的方法

2.类多实现接口

如果实现类实现了多个接口,而这多个接口中定义了同名同参数的默认方法,那么在实现类没有重写此方法的情况下,报错

3.继承与实现混合

如果子类继承的父类和实现的接口中声明了同名同参数的方法,子类在没有重写此方法的情况下,默认调用的是父类中的同名同参数的方法。

4.多接口存在同名方法

当接口的父接口中也有同样的默认方法时,就近原则调用子接口的方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值