在預設方法中訪問其他介面方法
你也可以從預設方法中訪問其他介面方法。
public interface Summable {
    int getA();
    int getB();
    default int calculateSum() {
        return getA() + getB();
    }
}
public class Sum implements Summable {
    @Override
    public int getA() {
        return 1;
    }
    @Override
    public int getB() {
        return 2;
    }
}
以下宣告將列印 3 :
System.out.println(new Sum().calculateSum());
預設方法也可以與介面靜態方法一起使用:
public interface Summable {
    static int getA() {
        return 1;
    }
    static int getB() {
        return 2;
    }
    default int calculateSum() {
        return getA() + getB();
    }
}
public class Sum implements Summable {}
以下宣告還將列印 3:
System.out.println(new Sum().calculateSum());