Menu
Coddy logo textTech

Zusammenfassung – Autofabrik

Teil des Abschnitts Object Oriented Programming der Lua-Journey von Coddy — Lektion 11 von 70.

challenge icon

Aufgabe

Einfach

Lassen Sie uns eine vollständige Car-Klasse bauen, die alles zusammenführt, was Sie in diesem Kapitel gelernt haben! Sie werden ein Autofabriksystem erstellen, in dem jedes Auto sein eigenes Modell und seine eigene Farbe hat, was die richtige Modulorganisation und unabhängige Instanzen demonstriert.

Sie werden Ihren Code über zwei Dateien organisieren:

  • Car.lua: Definieren Sie Ihre Car-Klasse nach dem Standard-Prototyp-Muster. Ihre Klasse benötigt einen :new(model, color)-Konstruktor, der Autos mit ihren eigenen Attributen erstellt. Fügen Sie eine :describe()-Methode hinzu, mit der sich jedes Auto selbst vorstellt.
  • main.lua: Binden Sie Ihr Car-Modul ein und erstellen Sie mehrere Auto-Instanzen, um zu demonstrieren, dass jedes Auto seinen eigenen unabhängigen Zustand beibehält.

Ihre :describe()-Methode sollte in genau diesem Format drucken:

A [color] [model]

Sie erhalten vier Eingaben:

  1. Modell für das erste Auto
  2. Farbe für das erste Auto
  3. Modell für das zweite Auto
  4. Farbe für das zweite Auto

Erstellen Sie in Ihrer Hauptdatei zwei Autos mit den bereitgestellten Eingaben und lassen Sie jedes Auto sich in einer separaten Zeile selbst beschreiben.

Wenn die Eingaben beispielsweise Sedan, blue, Truck und red sind, sollte die Ausgabe wie folgt lauten:

A blue Sedan
A red Truck

Jedes Auto sollte sein eigenes Modell und seine eigene Farbe speichern, was beweist, dass Ihre Klasse wirklich unabhängige Instanzen erstellt.

Probier es selbst

-- Benötige das Car-Modul
local Car = require('Car')

-- Eingaben lesen
local model1 = io.read()
local color1 = io.read()
local model2 = io.read()
local color2 = io.read()

-- TODO: Erstelle zwei Car-Instanzen mit Car:new()
-- TODO: Rufe :describe() für jedes Auto auf, um deren Beschreibungen auszugeben

Alle Lektionen in Object Oriented Programming