codingWang / Issue

private space .Do NOT look at it.
3 stars 0 forks source link

basic-java8-01-interface #4

Open codingWang opened 7 years ago

codingWang commented 7 years ago

Java 8 接口

java8允许我们通过default关键字来添加非抽象的方法实现。

比如:

interface Formula{
    double calculate(int a);

    default double sqrt(int a){
        return Math.sqrt(a);
    }
}

接口的实现类只需要实现抽象方法calculate()default类型的方法可以直接使用。

比如:


Formula formula = new Formula(){
    @Override
    public double calculate(int a){
        return sqrt(a * 100);
    }
};

formula.calculate(100);     // 100.0
formula.sqrt(16);           // 4.0

代码略显冗长,下一节我们会用更好的方法实现单个方法。