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.
Desafío
Mejora la clase Circle sobrescribiendo el método describe() y añadiendo un nuevo método calculateArea().
Tu tarea:
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)"
- 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)
- Calcule el área usando la fórmula:
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
1Objetos y la palabra clave this
Repaso rápido: ObjetosAgregar métodos a los objetosEntendiendo la palabra clave thisFunciones constructorasLa palabra clave newDesafío de repaso7Herencia y la palabra clave extends
HerenciaLa relación "es-un"La palabra clave extendsEl método super()Heredar propiedades y métodosDesafío de repaso13Composición vs. Herencia
La relación "tiene-un" vs. "es-un"Los límites de la herencia profundaConstrucción de objetos2Organización del código
¿Qué son los módulos?Exportar con exportImportar con importExportaciones por defecto vs. nombradas5Encapsulamiento y Acceso
EncapsulamientoCampos de clase públicos y privadosMétodos privadosDesafío de repaso8Organización del código OOP
Organizar clases en módulos11Proyecto: Un renderizador de figuras
Configuración: Clase Figura y exportaciónHerencia de la clase Círculo14Sistema de Gestión de Biblioteca
Diseño de la BibliotecaClase Libro con Composición9Métodos y propiedades estáticos
Nivel de clase vs. Nivel de instanciaPropiedades estáticasMétodos de utilidad estáticosDesafío de repaso