public abstract aspect D { private T Goo.data; public T Goo.getData(T defaultValue) { return (this.data != null ? data : defaultValue); } } aspect E extends D {} class Goo

{}