2

親クラスでフィールドを定義し、子の値をこのフィールドに割り当てて、タイプでアクセスできるようにする方法はRoomint bound = 3;これで親変数が非表示になると思います...

public abstract class Room {public int bound; }

public class DarkRoom extends Room {

     bound = 3;
}
4

2 に答える 2

4

クラス宣言ではなく、コンストラクターでフィールドを割り当てます。

public class DarkRoom extends Room {
    public DarkRoom() {
        bound = 3;
    }
}
于 2012-05-05T20:55:37.030 に答える
1

クラス初期化ブロックを使用できます。

public class DarkRoom extends Room {
   {
     bound = 3; // error VariableDeclaratorId expected after this token
         // int bound = 3; // hiding?
    }
}

DarkRoomまたは、クラスのメソッドまたはコンストラクターで初期化を実行します。

于 2012-05-05T20:53:20.523 に答える