JAVA8新特性总结一(接口函数默认实现)
xinghuo0007
前言:
java8出来以后有很长的时间,以前都知道java8但是项目中一个没有使用到,所以一直就没有看。现在有机会来学习一下java8。
特性一:接口函数默认实现
说明:
1.在java8中接口中的函数可以有默认的实现了,这样是接口更加的灵活。可以在接口中写一个通用默认的实现,减少实现类实现代码;
如果默认的实现方法不能满足需求,显示类也可以重写。
2.前提:
默认实现的前提是方法名称必须使用default关键字修饰;来看下面的案例
案例代码:
/**
定义接口
*/
interface DAO {
default int getInt(){
return 5;
}
}
/**
* 接口实现类
* */
class BasicDAO implements DAO{
public int getIntDefaultValue(){
return getInt();
}
}
/**
* 测试类
*/
public class Test {
public static void main(String[] args) {
BasicDAO basicDAO = new BasicDAO();
//结果为 5
System.out.println(basicDAO.getIntDefaultValue());
}
}
结果为:5
####总结:
1.可见我们为DAO接口定义的getInt方法中有默认的实现,返回值为5;在实现类BasicDAO中并没有重写getInt方法,而是直接调用。所以结果返回的是5;
1
下面我们复写DAO接口中的getInt方法:
/**
定义接口
*/
interface DAO {
default int getInt(){
return 5;
}
}
/**
* 接口实现类
* */
class BasicDAO implements DAO{
public int getIntDefaultValue(){
return getInt();
}
@Override
public int getInt(){
return 88;
}
}
/**
* 测试类
*/
public class Test {
public static void main(String[] args) {
BasicDAO basicDAO = new BasicDAO();
//结果为 88
System.out.println(basicDAO.getIntDefaultValue());
}
}
结果为: 88
####总结:
1. 我们在BasicDAO实现类里面复写了getInt方法,结果得到的结果是88。
1
本人博客:https://elfgirl.top/
————————————————
版权声明:本文为CSDN博主「xinghuo0007」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xinghuo0007/article/details/78594156