Каждая работа проверяется на плагиат, на момент публикации
уникальность составляет не менее 40% по системе проверки eTXT.
ЛР 5
17.5 Кбайт
300 ₽
Описание
Создать класс «Figure», наследовать от него классы круг «Circle» и прямоугольник «Rectangle». Задать для них соответствующие атрибуты (радиус, длина, ширина), которые реализовать как скрытые поля. В каждом классе напишите конструкторы, необходимые для инициализации атрибутов класса, реализуйте проверку переданных в конструктор параметров. В классе «Figure» создать пустой метод расчета площади (area). В классах «Circle» и «Rectangle» переопределить методы расчета площади (area). В классе с методом main cоздать массив элементов типа «Figure». Размер массива считать с клавиатуры. Заполнить его элементами типа «Circle» и «Rectangle». Написать метод выводящий на экран площади всех фигур из массива, а также количество треугольников и кругов (использовать instanceof). Таким образом, продемонстрировать свойства наследования, инкапсуляции и полиморфизма. Может ли метод area класса «Figure» быть private?
Использование адаптеров. Имеется класс Client, который имеет метод getArea(IFigure f) для вывода на экран площади фигуры, где IFigureэто интерфейс. Классами, реализующими интерфейс фигуры являются: Circle, Rectangle, которые имеют соответствующие методы для расчета площади getArea. Имеется класс Table, который тоже имеет метод для расчета площади –calculateArea, но этот класс не реализует интерфейс IFigure. Написать адаптер, позволяющий использовать класс Table (как будно он реализует интерфейс IFigure) в методе getArea(IFiguref)класса Client для вывода на экран площади стола.
Написать анонимный класс, реализующий интерфейс IFigureи передать его методу getArea(IFiguref) класса Client для вывода на экран площади квартиры. Для определения площади квартиры использовать класс Apartment.