aboutsummaryrefslogtreecommitdiffstats
path: root/tests/new/StaticInnerInterfaces_PR386.java
blob: e7403e1a231d5f97c6c5b8c604b88dd7cdf60a5c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import org.aspectj.testing.*;

public class StaticInnerInterfaces_PR386 {
    public static void main(String[] args) {
        A a = new A();
        A.I ab = new C();
        C c = new C();
        D d = new D();
        a.go();
        ab.go();
        c.go();
        d.go();
        Tester.checkAllEvents();
    }
    static {
        Tester.expectEventsInString("A0,C1,C2,D3");
    }
}

class B {
    static int j = 0;
}

class A {
    public static interface I { void go(); }
    public void go() { Tester.event("A" + (B.j++)); }
        
}

class C extends A implements I {
    public void go() { Tester.event("C" + (B.j++)); }
}

class D implements A.I {
    public void go() { Tester.event("D" + (B.j++)); }
}