Menu
Coddy logo textTech

Sobrescritura y método de área

Parte de la sección Programación Orientada a Objetos del Journey de JavaScript de Coddy — lección 41 de 56.

challenge icon

Desafío

Mejora la clase Circle sobrescribiendo el método describe() y añadiendo un nuevo método calculateArea().

Tu tarea:

  1. Sobrescribe el método <strong>describe()</strong> para que devuelva ${super.describe()} (Circle with radius ${this.radius}).

    Ejemplo: "A blue shape (Circle with radius 10)"

  2. Añade un método <strong>calculateArea()</strong> que:
    • Calcule el área usando la fórmula: Math.PI * this.radius * this.radius
    • Devuelva el área calculada (no es necesario console.log)

      *Este es un método específico de Circle (no está en la clase padre Shape)

Pruébalo tú mismo

import { Shape } from './Shape.js';
import { Circle } from './Circle.js';

// Pruebas
const basicShape = new Shape('red');
console.log(basicShape.describe()); // "A red shape"

const myCircle = new Circle('blue', 10);
console.log(myCircle.describe()); // Debería mostrar: "A blue shape (Circle with radius 10)"
console.log(myCircle.calculateArea()); // Debería mostrar: "314.1592653589793"

Todas las lecciones de Programación Orientada a Objetos