Как уже указывалось, конструктор ничего не возвращает (упрощенная версия состоит в том, что при new
он возвращает экземпляр объекта). Я догадываюсь о том, что вы пытаетесь сделать, но я все равно пойду. Мне кажется, что вы пытаетесь втиснуть конструкцию 3 объектов в один конструктор - вот почему ваш конструктор имеет 3 параметра. Также вы играете хаос с идентификаторами.
Я удалил все переменные, которые я не совсем понял, оставив только идентификатор, который увеличивается с каждым экземпляром Aircraft
. @Override
в основном только для галочки.
public class Aircraft {
private int aircraftID;
private static int lastID = 0;
@Override
public String toString(){
return "Aircraft_" + this.aircraftID;
}
public Aircraft() {
lastID++;
this.aircraftID = lastID;
}
}
Я взял на себя смелость и написал TestClass
просто чтобы посмотреть, имеем ли мы в виду то же самое. Опять же printAircraft()
метод для шоу.
public class TestClass {
private List<Aircraft> aircrafts;
public TestClass(){
aircrafts = new ArrayList<>();
}
public void addAircraft(Aircraft a){
aircrafts.add(a);
}
public void printAircraft(){
Iterator<Aircraft> it = aircrafts.iterator();
while(it.hasNext()){
System.out.println(it.next().toString());
}
}
}
и для его проверки мы создаем и экземпляр TestClass
добавляем 3 Aircraft
экземпляров и распечатываем содержимое
public static void main(String[] args) {
TestClass tc = new TestClass();
tc.addAircraft(new Aircraft());
tc.addAircraft(new Aircraft());
tc.addAircraft(new Aircraft());
tc.printAircraft();
}
Это было бы так, если вы хотите написать TestClass
. Если это будет дано, это поможет узнать, как это выглядит - возможно, это поможет нам лучше понять.