interface Test {
public void test();
}
public class TestMain {
private String h = "AAA";
public static void main(String[] args) {
TestMain t = new TestMain();
}
public TestMain() {
Test t = new Test() {
public void test() {
System.out.println( h );
}
};
t.test();
}
}
위 소스를 실행하면 h값이 정상적으로 출력됩니다.
익명 클래스 내부와 바깥 클래스는 다른 영역 아닌가요?
TestMain 클래스의 private 멤버 변수에 접근이 안될 것 같은데, 접근이 되는 논리가 무엇인지 궁금합니다.
감사합니다.