Java8 接口默认方法

来源:互联网 发布:淘宝黛慕名品假货 编辑:程序博客网 时间:2024/06/04 19:52

Java8接口中可以定义默认实现的方法,该方法只能有一个,该接口实现类必须实现抽象方法getAge,可以选择保留默认方法getName,或者重写它。

public interface Person {    int getAge();    default String getName(){        return "person";    }}

如果接口中定义的默认方法,和另外一个父类或者接口定义了同名方法,此时需哟按照以下方法解决。
1、选择父类中的方法,如果父类提供了具体的实现方法,那么接口中具有相同的名称和参数的默认防范会被忽略。
2、接口冲突。如果一个父接口接口一个默认方法,与另外一个接口中方法一致无论该方法是否为默认方法,此时需要通过覆盖方法来解决问题。

public interface Chinese {    default String getName(){        return "Chinese";    }}public class Tom implements Person, Chinese{    @Override    public int getAge() {        return 0;    }    @Override    public String getName() {        return Person.super.getName();    }}
原创粉丝点击