public class InitTest4 {
public class Inner1 {
public void m() {
System.out.println("hello from inner 1");
}
}
public static class Inner2 {
public void m() {
System.out.println("hello from inner 2");
}
}
public static interface InnerInterface1 {
public void go();
}
public interface InnerInterface2 {
public void go();
}
public static void main(String [] args){
InitTest4 it = new InitTest4();
it.run();
//Inner1 in = new Inner1();
class MyClass extends Inner2{
public void m() {
System.out.println("hello from anon subtype of inner 1");
}
};
/*class MyClass1 extends MyStaticClass1{
public void m() {
System.out.println("hello from anon subtype of inner 1");
}
};*/
new Inner2 () {
public void m(){
System.out.println("hello from inner 2 again");
}
}.m();
new InnerInterface1 () {
public void go(){
System.out.println("go");
}
}.go();
new InnerInterface2 () {
public void go(){
System.out.println("go2");
}
}.go();
}
public void run(){
new Inner1 () {
public void m() {
System.out.println("hello from anon subtype of inner 1");
}
}.m();
}
}