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。
原创粉丝点击