Я хотел бы унаследовать переменную rooms так же, как наследуется foo. Я искал в Google и stackoverflow, но не нашел соответствующих сообщений. Это может быть краткое описание вопроса, но я не думаю, что нужно что-то еще.

Код


import java.util.ArrayList;

class HomeAbstraction { // HomeAbstraction = Rooms; It's named like this to fit the rest of the project
    float area;

    public HomeAbstraction(float area) {
        this.area = area;
    }
}

class Home {
    String foo = "bar";
    ArrayList < HomeAbstraction > rooms = new ArrayList < HomeAbstraction > ();

    // setter
    public void setRooms(HomeAbstraction rooms) {
        this.rooms.add(rooms);
    }
}

class Department extends Home {
    // constructor
    public Department() {
        foo = "foo"; // works fine
        rooms; // should be pulled from parent but isn't working
        rooms.setRooms(new HomeAbstraction(50)); // Not sure if I can access the setter from this child class
    }
}

Журнал ошибок


idk.java:25: error: cannot find symbol
        rooms.setRooms(new HomeAbstraction(50));
             ^
  symbol:   method setRooms(HomeAbstraction)
  location: variable rooms of type ArrayList<HomeAbstraction>
1 error
-4
Luis L 10 Апр 2021 в 11:27

1 ответ

Лучший ответ

Можешь попробовать:

rooms.add(new HomeAbstraction(50));

Или

super.setRooms(new HomeAbstraction(50));

Или

super.rooms.add(new HomeAbstraction(50));
0
onkar ruikar 10 Апр 2021 в 08:36