2013-11-27 2 views

답변

3

이 이름으로 그림자 얘기는 Java Language specification

어떤 선언이 단순한 이름이 될 수없는 경우에 같은 이름의 다른 선언함으로써 범위의 부분에 그림자가 될 수 있습니다 말한다 은 선언 된 엔터티를 참조하는 데 사용됩니다.

및 예 xstatic 클래스 변수와 로컬 변수

class Test { 
    static int x = 1; 
    public static void main(String[] args) { 
     int x = 0; 
     System.out.print("x=" + x); 
     System.out.println(", Test.x=" + Test.x); 
    } 
} 

에게 준다. x는 지역 변수 x에 정의 된 방법에 참조하는 경우 지역 변수가 사용됩니다. 당신은 클래스 변수를 참조하고 싶었다면,이 같은 일을 찾을 수 있습니다

Test.x 

분석 도구를 사용해야합니다.

+0

음 ... 아니요. 언어에서 발생하는 Scope의 그림자를 의미하지는 않았지만, 프로그램 분석에서 발생하는 그림자 용어에 대해 이야기하고 있습니다. – ShivamMax

+0

@ ShivamMax 그것에 대해 이야기하는 기사를 링크 할 수 있습니까? –

+0

사실 많은 연구 논문에 등장합니다! – ShivamMax