You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Driver.java 712B

123456789101112131415161718192021222324252627282930313233
  1. import org.aspectj.testing.Tester;
  2. public class Driver {
  3. public static void main(String[] args) { test(); }
  4. public static void test() {
  5. C c = new C();
  6. D d = new D();
  7. E e = new E();
  8. Tester.check( c instanceof A, "C should extend A");
  9. Tester.check( c instanceof B, "Declare parents threw away superclass info: C should extend B");
  10. Tester.check( d instanceof A, "D should extend A");
  11. Tester.check( e instanceof A, "E should extend A");
  12. }
  13. static class A {};
  14. static class B extends A {};
  15. static class C extends B {};
  16. static class D {};
  17. static class E extends D {};
  18. static aspect Adoption {
  19. declare parents : C extends A;
  20. declare parents : D extends A;
  21. };
  22. }