diff --git a/book/src/main/java/ru/molokoin/Book.java b/book/src/main/java/ru/molokoin/Book.java index 887a1b4..a07a96b 100644 --- a/book/src/main/java/ru/molokoin/Book.java +++ b/book/src/main/java/ru/molokoin/Book.java @@ -16,7 +16,7 @@ public class Book { String[] a = (String[]) authors; setAuthors(a); } - + //добавляем список авторов public String[] uppendAuthors(String author){ String[] result; try { diff --git a/book/src/main/java/ru/molokoin/Publisher.java b/book/src/main/java/ru/molokoin/Publisher.java index f1631f9..3d1563d 100644 --- a/book/src/main/java/ru/molokoin/Publisher.java +++ b/book/src/main/java/ru/molokoin/Publisher.java @@ -3,20 +3,57 @@ package ru.molokoin; public class Publisher { private String name; private String sity; + Publisher(){ + this(null, null); + } + Publisher(String name, String sity){ + setName(name); + setSity(sity); + } + //выводим в консоль данные Издательства + public void print(){ + System.out.println("Издательство: " + getName() + " ----> " + "город: " + getSity()); + } + /** + * Метод класса. Возвращает массив данных об издательствах по умолчанию + * @return + */ + public static Publisher[] getDefaults(){ + Publisher[] defaultPublishers = new Publisher[4]; + defaultPublishers[0] = new Publisher("Проспект", "Москва"); + defaultPublishers[1] = new Publisher("Питер", "Санкт-Петербург"); + defaultPublishers[2] = new Publisher("БХВ", "Санкт-Петербург"); + defaultPublishers[3] = new Publisher("Диалектика", "Киев"); + return defaultPublishers; + } /** * @param name the name to set + * DONE: имя издательства не олжно быть пустой ссылкой */ public void setName(String name) { - //не должно быть пустой ссылкой - this.name = name; + String defaultName = "noname publisher"; + try { + if (name == null) throw new NullPointerException("Имя издательства не задано пользователем. Установлено значение поля по умолчанию {noname publisher} ..."); + }catch (NullPointerException e){ + setName(defaultName); + }finally { + this.name = name; + } } /** * @param sity the sity to set + * TODO: Наименование города издания не должно быть пустой ссылкой */ public void setSity(String sity) { - //не должно быть пустой ссылкой - this.sity = sity; + String defaultSity = "noname sity"; + try { + if (sity == null) throw new NullPointerException("Наименование города не задано пользователем. Установлено значение поля по умолчанию {noname sity} ..."); + } catch (Exception e) { + setSity(defaultSity); + }finally{ + this.sity = sity; + } } /** * @return the name @@ -30,5 +67,13 @@ public class Publisher { public String getSity() { return sity; } + public static void main(String[] args) { + Publisher[] publishers = Publisher.getDefaults(); + int i = 0; + while (i < publishers.length){ + publishers[i].print(); + i++; + } + } } diff --git a/book/target/classes/ru/molokoin/Publisher.class b/book/target/classes/ru/molokoin/Publisher.class index c8af84b..d36d316 100644 Binary files a/book/target/classes/ru/molokoin/Publisher.class and b/book/target/classes/ru/molokoin/Publisher.class differ