Если класс ListBook
имеет массив String
, он должен быть атрибутом, тогда, когда вы вызовете printList()
, вы прочитаете этот массив.Поскольку проблема сейчас заключается в том, что массив связан с экземпляром и не должен передаваться как параметр
public class ListBook {
private static String[] defaultBooks = {"Necromonicon", "The Hobbit", "Hannibal", "Cooking an egg", "The Hulk smashes again", "The Tyranny of a king",
"The Phantom Menace", "Rogue One: A Starwars Story", "The Mighty Hercules", "The Serpents Gaze", "The End of the World"};
private String[] bookList;
public ListBook() {
this(defaultBooks);
}
public ListBook(String[] books) {
bookList = books;
}
public void printList() {
for (String x : bookList) {
System.out.println(x);
}
}
}
, а использоваться как
public static void main(String[] args) {
ListBook r = new ListBook();
r.printList();
// OR
ListBook r2 = new ListBook(new String[]{"Book 1", "Book 2", "Book 3"});
r2.printList();
}