/* @test /nodynamiccopyright/ * @bug 7192246 * @summary check that re-abstraction works properly * @compile/fail/ref=Neg03.out -XDrawDiagnostics Neg03.java
*/
class Neg03 { interface A { defaultvoid m() { Neg03.one(this); }
}
interface B { defaultvoid m() { Neg03.two(this); }
}
interface C extends A, B { defaultvoid m() { Neg03.one(this); }
}
staticclass X implements C, A { } //ok - ignore extraneous remix of A
interface D extends A, B { void m(); // ok - m() is not reabstracted!
}
staticclass Y implements D, A { } // invalid - abstract D.m()
interface E extends A { void m(); // reabstraction of m()
}
staticclass W implements D, E { } // invalid - abstracts D.m()/E.m()
staticclass Z implements D, A, B { } // invalid - abstract D.m()
staticvoid one(Object a) { } staticvoid two(Object a) { }
}
Messung V0.5
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.31Bemerkung:
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.