Shadowing occurs when a local variable has the same name as a variable or a field in an outer scope.
This can lead to three main problems:
To avoid these problems, rename the shadowing, shadowed, or both identifiers to accurately represent their purpose with unique and meaningful names.
This rule focuses on variables in methods that shadow a field.
class Foo {
public var myField:int;
public function doSomething():String {
var myField:int = 0; // Noncompliant
//...
}
}