Menu
Coddy logo textTech

Buch-Klasse mit Komposition

Teil des Abschnitts Objektorientierte Programmierung der JavaScript-Journey von Coddy — Lektion 51 von 56.

challenge icon

Aufgabe

Erstellen Sie die Klasse Book mit Komposition

Ihre Aufgabe:

  1. Importieren Sie in der Datei namens Book.js die Klasse Author am Anfang
  2. Erstellen und exportieren Sie eine Klasse Book mit:
    • Privaten Feldern: #title, #author, #isCheckedOut
    • Einem Konstruktor, der title und author entgegennimmt
    • Zwei Gettern: title und authorInfo, welcher den Namen des Autors zurückgibt
  3. Fügen Sie in main.js den Import für die Klasse Book hinzu

Wie Komposition hier angewendet wird:

Komposition bedeutet eine "hat-ein"-Beziehung. In unserer Book-Klasse:

  • Book HAT-EINEN Author (nicht "ist-ein" Author)
  • Das Book enthält eine Author-Instanz als eine seiner Komponenten
  • Der Author existiert separat und kann von mehreren Books verwendet werden
  • Dies ist Komposition: Das Aufbauen komplexer Objekte (Book) aus einfacheren (Author)

Probier es selbst

import { Author } from './Author.js';

// TODO: Importiere die Book-Klasse

// Tests
const author = new Author('J.K. Rowling');
const book = new Book('Harry Potter', author);

console.log('Book title:', book.title); // Sollte ausgeben: "Book title: Harry Potter"
console.log('Author:', book.authorInfo); // Sollte ausgeben: "Author: J.K. Rowling"

Alle Lektionen in Objektorientierte Programmierung