我可能会要求您阅读以下内容,而不是提供我自己的描述:http://en.wikipedia.org/wiki/Variable_shadowing.一旦理解了变量的阴影,我建议您继续阅读有关覆盖/阴影方法和可见性的内容,以全面了解这些术语.
实际上,因为这个问题是用Java术语提出的,这里有一个小例子:
public class Shadow {
private int myIntVar = 0;
public void shadowTheVar(){
// since it has the same name as above object instance field, it shadows above
// field inside this method
int myIntVar = 5;
// If we simply refer to 'myIntVar' the one of this method is found
// (shadowing a seond one with the same name)
System.out.println(myIntVar);
// If we want to refer to the shadowed myIntVar from this class we need to
// refer to it like this:
System.out.println(this.myIntVar);
}
public static void main(String[] args){
new Shadow().shadowTheVar();
}
}
Run Code Online (Sandbox Code Playgroud)