Sun CertifiedJavaProgrammerの模擬試験から取得した次のコードがあります。
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;
}
}
テストでは、次の行の結果を尋ねられます。
System.out.println(x + y + ++x);
答えは3ですが、なぜ3なのか完全にはわかりません。完全に無視すれば、その答えにたどり着くことができます。
static
{
int x = 5;
}
私の質問は、上記のコードスニペットの意味は何ですか?変数「x」の値を変更しないのはなぜですか?