Shadowing fields with a local variable is a bad practice that reduces code readability: it makes it confusing to know whether the field or the variable is being used.
class Foo {
public int myField;
public void doSomething() {
int myField = 0;
...
}
}