Code Lab

Фигуры и переопределение методов

СложнаяКлассы15 мин

Напиши класс Shape и два его подкласса Rectangle и Circle. Покажи на них переопределение метода.

  • new Shape(name) хранит name. Его метод area() возвращает 0, а describe() возвращает строку вида 'Rectangle: area 6' с площадью, округлённой до 2 знаков после точки.
  • new Rectangle(width, height) получает имя 'Rectangle' и площадь width * height.
  • new Circle(radius) получает имя 'Circle' и площадь Math.PI * radius * radius без округления.

describe() пиши только в Shape, а area() объяви методом в каждом подклассе.

Примеры

new Rectangle(2, 3).describe()

Вернёт 'Rectangle: area 6'

new Circle(1).describe()

Вернёт 'Circle: area 3.14'

new Shape('Point').area()

Вернёт 0

Спрашивали в EPAM · Источник

Загружаем редактор...
  1. Прямоугольник 2 x 3, площадь 6 и его describe()
  2. Круг радиуса 1, площадь PI, describe() округляет до 3.14
  3. Обычный Shape с площадью 0 и своим именем

Скрытые тесты запускаются по Submit.