Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvOpIfPrm 74 of 147 menu
◀ ▶

Практика на интерфейсы в Java

Интерфейс Figure задаёт две операции для плоских фигур: площадь и периметр. Классы с разной геометрией реализуют один и тот же контракт по-своему. Контракт объявляют так:

interface Figure { double area(); double perimeter(); }

Квадрат хранит длину стороны и считает площадь и периметр по формулам:

class Square implements Figure { private final double side; public Square(double side) { this.side = side; } @Override public double area() { return side * side; } @Override public double perimeter() { return 4 * side; } }

Прямоугольник использует две стороны:

class Rectangle implements Figure { private final double width; private final double height; public Rectangle(double width, double height) { this.width = width; this.height = height; } @Override public double area() { return width * height; } @Override public double perimeter() { return 2 * (width + height); } }

Если метод интерфейса не реализовать, проект не соберётся. Компилятор сразу укажет, какой член контракта пропущен.

Сделайте класс Disk, реализующий интерфейс Figure.

Создайте несколько объектов Square, Rectangle и Disk. Запишите их в один список типа Figure в произвольном порядке.

Переберите список и выведите площадь каждой фигуры.

Реализуйте класс FigureCollection с методом add для добавления Figure и методом totalArea для суммарной площади всех фигур.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить