У меня есть статический массив ArrayList, доступ к которому я могу получить только из класса («Продажа»). В этом ArrayList я хочу добавить элементы того же класса. Как я могу добавить их из конструктора?Добавить элемент в ArrayList «рекурсивно»
Я сделал это таким образом, и он не работает:
public class Sale{
private static ArrayList<Sale> sales;
private Buyer buyer;
private Item item;
public Sale(Buyer buyer, Item item){
this.buyer=buyer;
this.item=item;
sales.add(this);
}
.....
Заранее спасибо, я начинаю программировать на Java.
Почему вы хотите даже сделать это рекурсивно. Тебе это не нужно. Поскольку переменная является статической, вы можете легко создать метод и добавить «Collection» там. Я не вижу никакой ценности в этой логике, когда вы можете иметь цикл for и добавлять туда значения, используя статический метод, который ссылается на статическую переменную 'sales'. –
Я бы тоже спросил: почему вы хотите это сделать? В смысле: это пахнет BAD дизайном. Почему класс Sale ... поддерживает список продаж ?! Если вашей «торговой системе» необходимо сохранить списки объектов «Продажи»; то черт возьми; они должны быть в других местах. – GhostCat
Согласие с @ Jägermeister, то есть ПЛОХАЯ практика. –