JAVA8新特性总结一(接口函数默认实现)
来源:互联网 发布:java写的桌面程序 编辑:程序博客网 时间:2024/06/16 04:45
前言:
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;
下面我们复写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。
阅读全文
0 0
- JAVA8新特性总结一(接口函数默认实现)
- java8新特性 (λ、stream 与 默认接口方法)
- JAVA8新特性(接口的默认方法)
- JAVA8新特性(访问接口的默认方法)
- java8新特性 (λ、stream 与 默认接口方法)
- Java8新特性 - 默认接口方法
- Java8新特性 - 默认接口方法
- java8新特性回顾(一)---函数式接口和lamda表达式
- JAVA8新特性之(函数式接口)
- Java8新特性(内置的核心函数式接口)
- Java8新特性函数式接口
- Java8 新特性 函数式接口
- Java8新特性 接口默认方法,接口静态方法
- Java8:接口新特性
- java8新特性(七):默认方法
- JAVA8 新特性实际使用总结(一)
- Java8新特性(一)------函数式编程
- java8新特性接口的默认方法和静态方法
- opencv python 4 基本变换
- ie8下append问题及attr("value",xxx)和val(xxx)问题总结
- RxJava 、AsyncTask区别
- 【亲测】centos 7 下安装cuDNN
- 《hbase学习》-07-HBase 更改表名
- JAVA8新特性总结一(接口函数默认实现)
- webpack3+react16+react-router3+react-redux实战项目
- tomcat安装中遇到的莫名奇妙的问题
- 探索Android软键盘的疑难杂症
- leetcode解题方案--038--count and say
- RegExp类型
- 刷LeetCode(12)——Integer to Roman
- Android心跳包(一)——心跳实现
- 二叉树的按层打印与ZigZag打印