Создайте класс Book, описывающий книгу.
Каждая книга содержит: автора, название, стоимость в рублях и год издания.
Создайте для каждого атрибута книги закрытую переменную-член класса соответствующего типа.
Конструктор по умолчанию должен создавать книгу с параметрами:
«Не определено», «Не определено», 0.0, 0.
Второй конструктор должен принимать все 4 параметра: автора, название, стоимость в рублях и год издания.
Напишите третий конструктор, который имеет 2 параметра: автора и год издания (Используйте вызов конструктора по умолчанию).
Для каждого атрибута создайте методы получения и установки значения.
Задание 2.
Создайте класс ChildrenBook, описывающий книгу для детей, расширяющий класс Book. Книга для детей имеет еще один параметр – минимальный возраст, с которого можно читать книгу (в годах).
Создайте соответствующую переменную, методы получения и установки значения.
Создайте 3 конструктора: по умолчанию (мин. возраст = 0), с двумя параметрами (как в задании 1) и с полным списком параметров. При разработке конструкторов используйте вызовы конструкторов суперкласса.
Создайте класс ScientificBook, описывающий научную книгу, расширяющий класс Book. Научная книга имеет дополнительный параметр – индекс цитируемости (вещественное число).
Создайте соответствующую переменную, методы получения и установки значения.
Создайте 3 конструктора: по умолчанию (индекс цитирования = 0.0), с двумя параметрами (как в задании 1) и с полным списком параметров. При разработке конструкторов используйте вызовы конструкторов суперкласса.
Задание 3.
Создайте класс ChildrenLibraryHall, описывающий детский зал библиотеки, который хранит массив книг для детей.
Зал имеет имя (например «12+» или «6+»).
Нумерация книг сквозная, начинается с 0 и соответствует индексу в массиве. Номер книги не хранится.
Создайте соответствующие переменные и методы чтения/установки значений.
Создайте 2 конструктора:
1. принимающий имя зала и кол-во книг в зале;
2. принимающий имя зала и массив книг.
Создайте следующий методы для:
· получения количества книг в зале;
· выводящий на экран список названий всех книг в зале;
· получения общей стоимости всех книг в зале;
· получения книги по ее номеру в зале;
· изменения книги по ее номеру;
· добавления книги;
· удаления книги.
Создайте метод getBestBook(), возвращающий книгу с самой высокой стоимостью.