org.aspectj/tests/new/declareParents/Driver.java
2003-03-27 17:01:11 +00:00

34 řádky
712 B
Java

import org.aspectj.testing.Tester;
public class Driver {
public static void main(String[] args) { test(); }
public static void test() {
C c = new C();
D d = new D();
E e = new E();
Tester.check( c instanceof A, "C should extend A");
Tester.check( c instanceof B, "Declare parents threw away superclass info: C should extend B");
Tester.check( d instanceof A, "D should extend A");
Tester.check( e instanceof A, "E should extend A");
}
static class A {};
static class B extends A {};
static class C extends B {};
static class D {};
static class E extends D {};
static aspect Adoption {
declare parents : C extends A;
declare parents : D extends A;
};
}