3

Java を使用している場合、子クラスが同じ名前の別のインスタンス変数を宣言してスーパークラスのインスタンス変数をシャドウするときに、(問題があれば Eclipse を使用して) コンパイラの警告を表示する方法はありますか? 例えば:

class A {
    String variable;

    A() {
        variable = "A";
    }
}

class B extends A {
    int variable;

    B() {
        variable = 1;
    }
}

B b = new B();
System.out.println("Variable value: " + b.variable + ", " + ((A) b).variable);
// prints out: "Variable value: 1, A"

B変数が既に存在することを警告したいと思います。

4

1 に答える 1

6

はい。Eclipseで

Preferences->Java->Compiler->Errors/Warnings

そのペインには、名前のシャドウイングと競合に関するサブセクションがあり、探しているオプションが含まれています。

于 2012-12-10T17:16:00.720 に答える