Java / Variable
What is shadowing in Java?
Shadowing refers to the practice of using two variables with the same name within scopes that overlap. When shadowed, the variable with the higher-level scope is hidden because the variable with lower-level scope overrides it. The higher-level variable is then shadowed.
You can access a shadowed class or instance variable by using its fully qualifyed name which is the name of the class that contains it. Shadowing is also known as variable shadowing.
public class Shadowing { int i = 5; public void setI(int i) { this.i = i; } }
In the above example, the variable 'i' is shadowed in the setter and this keyword is used to refer to the instance variable 'i'.
More Related questions...