I 썬 공인 자바 프로그래머를위한 모의 시험에서 가져온 다음 코드 조각이 :자바 정적 범위 지정
System.out.println(x + y + ++x);
:
이
public class Static
{
static
{
int x = 5;
}
static int x,y;
public static void main(String args[])
{
x--; myMethod();
System.out.println(x + y + ++x);
}
public static void myMethod()
{
y = x++ + ++x;
}
}
시험은이 라인의 결과를 묻는 메시지를
대답은 3,하지만 난 완전히 3. 왜 내가 완전히 무시하면 내가 그 답에 도달 할 수 이해가 안 :
static
{
int x = 5;
}
제 질문은 위의 코드 스 니펫의 의미는 무엇입니까? 변수 'x'의 값을 변경하지 않는 이유는 무엇입니까?
이다라고 -in 덕분에, 작동 나는 그것을 얻을 . 범위가 지정되어 있으므로 변수가 범위 뒤에 존재하지 않습니다. – czchlong