public void test(){
int i;
synchronized (this)
{
    i = 0;
    int j=0;
    int k;
}
j++;//编译错误j cannot resolved to a variable!!!
int k=0;//编译成功:居然可以重复定义!!!
    }想了半天,一直想不通,为何在synchronized块中定义的变量在方法域内就好像没有定义过一样无法访问。
求指点~