Хотите улучшить этот вопрос? Обновите вопрос так, чтобы он вписывался в тематику Stack Overflow на русском.
Закрыт 1 год назад.
Не могу из метода Main вызвать функции листа. Есть фигуры, которые мы можем запихивать в коробку. Коробка и является листом. Что не так? Помогите пожалуйста, люди добрые
Коробка:
import org.belsut.estryn.lessons.task02.figures.Figure;
import java.util.ArrayList;
import java.util.List;
public class Box {
private List<Figure> box;
public Box() {
box = new ArrayList<Figure>();
}
}
Main:
public class Main {
public static void main(String[] args) {
Box box = new Box();
PaperCircle paperCircle = new PaperCircle(5);
box.add(paperCircle); //add подчеркивает красным.
//подсказывает: "Создайте метод add в классе Box"
}
}
У вас в классе Box
нет метода add()
. Создайте метод add()
в классе Box
, либо создайте метод getBox()
, возвращающий лист. Примеры реализации:
// класс Box
public void add(Figure figure) {
box.add(figure);
}
// вызывайте этот метод также, как у вас в коде в вопросе
Или второй способ(более желательный):
// класс Box
public List<Figure> getBox() {
return box;
}
// вот как добавлять объекты
box.getBox().add(...);
Проблема решена. Необходимо класс Box унаследовать от ArrayList Спасибо @Sergey Gornostaev
public class Box extends ArrayList {
@Override
public boolean add(Object o) {
if (this.contains(o)) {
return false;
}
return super.add(o);
}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Мне необходимо отловить снятие программы с выполнения как это сделать? Событие windowDeactivated срабатывает не только в случае непредвиденного...
допустим у пользователь вводит "cosx/sinx+1", x нам известен (к примеру x = 5) Суть в том, что нельзя просто привести это всё к строке вида Mathcos(a)/Math
Не могу переопределить методы addВернее могу, но они не работают так, как нужно
Проблема в том, что я получаю 500 ошибкуА если я делаю тоже самое, но id передаю через куки, то всё нормально