JAVA8新特性总结一(接口函数默认实现)

####前言:

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。

本人博客:https://elfgirl.top/

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值