Crear Instancias
Parte de la sección Programación Orientada a Objetos del Journey de JavaScript de Coddy — lección 12 de 56.
Después de definir una clase, puedes crear objetos basados en esa clase usando la palabra clave new. Estos objetos se llaman instancias.
Supongamos que tenemos una clase Person sencilla:
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
greet() {
return `Hello, my name is ${this.name}`;
}
}Crea una instancia de la clase Person:
const john = new Person("John", 30);Después de ejecutar el código anterior, john es una instancia de la clase Person con:
- la propiedad
nameestablecida en "John" - la propiedad
ageestablecida en 30
Puedes acceder a las propiedades y métodos de la instancia:
console.log(john.name); // Salida: John
console.log(john.greet()); // Salida: Hello, my name is JohnPuedes crear múltiples instancias de la misma clase:
const sarah = new Person("Sarah", 25);
console.log(sarah.name); // Salida: SarahDesafío
Se te proporciona una clase Student. Tu tarea es crear dos instancias de estudiante en el archivo driver.js:
- Crea
student1con el nombre "Sarah" y la calificación 85 - Crea
student2con el nombre "Mike" y la calificación 92
Pruébalo tú mismo
import { Student } from './student.js';
// TODO: Crea una instancia de la clase Student llamada student1 con el nombre "Sarah" y la calificación 85
// TODO: Crea una instancia de la clase Student llamada student2 con el nombre "Mike" y la calificación 92
// Código de prueba - no modificar
console.log(student1.name); // Debería mostrar "Sarah"
console.log(student2.grade); // Debería mostrar 92Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
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írculoSobrescritura y método de áreaContador de figuras estático14Sistema de Gestión de Biblioteca
Diseño de la BibliotecaClase Libro con ComposiciónValidación del Autor del Libro9Métodos y propiedades estáticos
Nivel de clase vs. Nivel de instanciaPropiedades estáticasMétodos de utilidad estáticosDesafío de repaso