Я создал этот метод buildDogs()
, который создает 5 бинов и сохраняет их в массиве. Затем я создал метод displayDogs()
, который должен перебирать 5, и, используя toString
, вывести их. Наконец, в моем основном методе мне нужно сохранить метод displayDogs()
в массиве с именем allDogs
. Однако всякий раз, когда я пытаюсь вызвать buildDogs()
в моем методе main
, я просто получаю сообщение об ошибке, в котором говорится, что я не могу использовать нестатический метод в static void main. Я не уверен, где я испортил, понимаешь, что я делаю не так? Вот точный учебный план для моего задания и мой код.
Curriculum
buildDogs»
Этот нестатический метод не имеет параметров.
Он строит пять DogBean-компонентов с использованием жестко закодированных (определяемых программистом) значений. Не получайте эти значения из командной строки!
помещает пять DogBeans в массив
возвращает массив DogBeans
«displayDogs»
Этот нестатический метод имеет один параметр - массив DogBeans.
Он перебирает передаваемый массив и вызывает собственный метод toString для каждого DogBean.
«Главный»
Это стандартный статический метод main.
В этом методе вы должны вызвать buildDogs и сохранить результат в массиве DogBeans с именами «allDogs» и
вызовите displayDogs и передайте ему ссылку на массив allDogs
Java-код:
public class Kennel {
public DogBean[] buildDogs(){
DogBean dog1 = new DogBean(1, "blue", 1, "schnoodle", "clyde");
DogBean dog2 = new DogBean(2, "yellow", 2, "dachsund", "jack");
DogBean dog3 = new DogBean(3, "green", 3, "schnauzer", "john");
DogBean dog4 = new DogBean(4, "red", 4, "poodle", "bonnie");
DogBean dog5 = new DogBean(5, "purple", 5, "pitbull", "jacob");
DogBean[] dogs = {dog1, dog2, dog3, dog4, dog5};
return dogs;
}
public DogBean[] displayDogs(){
DogBean[] dogsArray = buildDogs();
/*for each loop*/
for (int i = 0; i < dogsArray.length; i++)
dogsArray[i].toString();
System.out.printf(dogsArray + ", ");
return dogsArray;
}
public static void main(String[] arg) {
DogBean[] allDogs = buildDogs();
DogBean[] displayDogs = allDogs;
}
}