Cannot implement abstract method with extension method

Thomas Jung thomas.andreas.jung at googlemail.com
Wed Aug 25 05:01:02 PDT 2010


Hi,

given the extension method m in interface A and abstract method m in
the abstract class B. The definition of the extension method A.m is
not used to "implement" B.m in C.

interface A{
	extension boolean m(Object object) default As.m;
}

abstract class B {
	public abstract boolean m(Object object);
}

class C extends B implements A{}

C is not abstract and does not override abstract method m(Object) in B
	class C extends B implements A{}

Interfaces have the same problem:

interface A{
	extension boolean m(Object object) default As.m;
}
interface B {
	boolean m(Object object);
}

class C  implements A, B{}

C is not abstract and does not override abstract method m(Object) in B
	class C  implements A, B{}

Thomas


More information about the lambda-dev mailing list