Friday, 17 February 2017

Default Method : Override






 interface Fooable {
    default int foo() {return 3;}
}

public class OverrideDefaultMethod extends Object implements Fooable {
    @Override    public int foo() {
        //return super.foo() + 1; //error: no method foo() in java.lang.Object        return Fooable.super.foo() + 1; //okay, returns 4    }

    public static void main(String[] args)
    {
        OverrideDefaultMethod overrideDefaultMethod = new OverrideDefaultMethod();        System.out.println( overrideDefaultMethod.foo() );    }
}

No comments:

Post a Comment