Herausforderung: Klassenvererbung mit extends und Verwendung von super
Aufgabe
Sie arbeiten an einem Transportsystem, das verschiedene Fahrzeugtypen verfolgt. Jedes Fahrzeug hat eine make
, model
und year
. Für Elektrofahrzeuge müssen Sie auch die batteryCapacity
verfolgen. Sie werden Vererbung verwenden, um eine allgemeine Vehicle
-Klasse für spezifische Elektrofahrzeuge zu erweitern.
- Erstellen Sie eine
ElectricVehicle
-Klasse, dieVehicle
erweitert; - Der Konstruktor von
ElectricVehicle
solltemake
,model
,year
undbatteryCapacity
akzeptieren; - Verwenden Sie
super()
, ummake
,model
undyear
in der Elternklasse zu initialisieren; - Fügen Sie eine
getDetails
-Methode zuElectricVehicle
hinzu, die dieVehicle
-Methode vongetDetails
überschreibt. Sie solltesuper.getDetails()
aufrufen und Informationen überbatteryCapacity
hinzufügen. Das Format sollte sein:"{make} {model} ({year}) with a battery capacity of {batteryCapacity} kWh."
.
12345678910111213141516171819202122232425262728293031class Vehicle { constructor(make, model, year) { this.make = make; this.model = model; this.year = year; } getDetails() { return `${this.make} ${this.model} (${this.year})`; } } class ElectricVehicle _____ _____ { _____(make, model, year, _____) { _____(_____, _____, _____); this.batteryCapacity = batteryCapacity; } _____() { return `${super._____} with a battery capacity of ${ _____._____ } kWh.`; } } // Testing const vehicle = new Vehicle('Toyota', 'Camry', 2020); console.log(vehicle.getDetails()); // Expected: Toyota Camry (2020) const electricVehicle = new ElectricVehicle('Tesla', 'Model 3', 2021, 75); console.log(electricVehicle.getDetails()); // Expected: Tesla Model 3 (2021) with a battery capacity of 75 kWh.
- Definieren Sie eine Klasse
ElectricVehicle
, dieVehicle
erweitert; - Fügen Sie im Konstruktor von
ElectricVehicle
einen ParameterbatteryCapacity
nachmake
,model
undyear
hinzu; - Verwenden Sie
super(make, model, year)
, um den Konstruktor der Elternklasse aufzurufen undmake
,model
undyear
zu initialisieren; - Weisen Sie
batteryCapacity
einer Eigenschaft inElectricVehicle
zu; - Definieren Sie eine Methode
getDetails
inElectricVehicle
, die die MethodeVehicle
vongetDetails
überschreibt; - Verwenden Sie innerhalb von
getDetails
super.getDetails()
, um die Details der Elternklasse zu erhalten, und fügen Sie dann die Informationen zur Batteriekapazität zur Rückgabestring hinzu.
12345678910111213141516171819202122232425262728293031class Vehicle { constructor(make, model, year) { this.make = make; this.model = model; this.year = year; } getDetails() { return `${this.make} ${this.model} (${this.year})`; } } class ElectricVehicle extends Vehicle { constructor(make, model, year, batteryCapacity) { super(make, model, year); this.batteryCapacity = batteryCapacity; } getDetails() { return `${super.getDetails()} with a battery capacity of ${ this.batteryCapacity } kWh.`; } } // Testing const vehicle = new Vehicle('Toyota', 'Camry', 2020); console.log(vehicle.getDetails()); // Output: Toyota Camry (2020) const electricVehicle = new ElectricVehicle('Tesla', 'Model 3', 2021, 75); console.log(electricVehicle.getDetails()); // Output: Tesla Model 3 (2021) with a battery capacity of 75 kWh.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 2.22
Herausforderung: Klassenvererbung mit extends und Verwendung von super
Swipe um das Menü anzuzeigen
Aufgabe
Sie arbeiten an einem Transportsystem, das verschiedene Fahrzeugtypen verfolgt. Jedes Fahrzeug hat eine make
, model
und year
. Für Elektrofahrzeuge müssen Sie auch die batteryCapacity
verfolgen. Sie werden Vererbung verwenden, um eine allgemeine Vehicle
-Klasse für spezifische Elektrofahrzeuge zu erweitern.
- Erstellen Sie eine
ElectricVehicle
-Klasse, dieVehicle
erweitert; - Der Konstruktor von
ElectricVehicle
solltemake
,model
,year
undbatteryCapacity
akzeptieren; - Verwenden Sie
super()
, ummake
,model
undyear
in der Elternklasse zu initialisieren; - Fügen Sie eine
getDetails
-Methode zuElectricVehicle
hinzu, die dieVehicle
-Methode vongetDetails
überschreibt. Sie solltesuper.getDetails()
aufrufen und Informationen überbatteryCapacity
hinzufügen. Das Format sollte sein:"{make} {model} ({year}) with a battery capacity of {batteryCapacity} kWh."
.
12345678910111213141516171819202122232425262728293031class Vehicle { constructor(make, model, year) { this.make = make; this.model = model; this.year = year; } getDetails() { return `${this.make} ${this.model} (${this.year})`; } } class ElectricVehicle _____ _____ { _____(make, model, year, _____) { _____(_____, _____, _____); this.batteryCapacity = batteryCapacity; } _____() { return `${super._____} with a battery capacity of ${ _____._____ } kWh.`; } } // Testing const vehicle = new Vehicle('Toyota', 'Camry', 2020); console.log(vehicle.getDetails()); // Expected: Toyota Camry (2020) const electricVehicle = new ElectricVehicle('Tesla', 'Model 3', 2021, 75); console.log(electricVehicle.getDetails()); // Expected: Tesla Model 3 (2021) with a battery capacity of 75 kWh.
- Definieren Sie eine Klasse
ElectricVehicle
, dieVehicle
erweitert; - Fügen Sie im Konstruktor von
ElectricVehicle
einen ParameterbatteryCapacity
nachmake
,model
undyear
hinzu; - Verwenden Sie
super(make, model, year)
, um den Konstruktor der Elternklasse aufzurufen undmake
,model
undyear
zu initialisieren; - Weisen Sie
batteryCapacity
einer Eigenschaft inElectricVehicle
zu; - Definieren Sie eine Methode
getDetails
inElectricVehicle
, die die MethodeVehicle
vongetDetails
überschreibt; - Verwenden Sie innerhalb von
getDetails
super.getDetails()
, um die Details der Elternklasse zu erhalten, und fügen Sie dann die Informationen zur Batteriekapazität zur Rückgabestring hinzu.
12345678910111213141516171819202122232425262728293031class Vehicle { constructor(make, model, year) { this.make = make; this.model = model; this.year = year; } getDetails() { return `${this.make} ${this.model} (${this.year})`; } } class ElectricVehicle extends Vehicle { constructor(make, model, year, batteryCapacity) { super(make, model, year); this.batteryCapacity = batteryCapacity; } getDetails() { return `${super.getDetails()} with a battery capacity of ${ this.batteryCapacity } kWh.`; } } // Testing const vehicle = new Vehicle('Toyota', 'Camry', 2020); console.log(vehicle.getDetails()); // Output: Toyota Camry (2020) const electricVehicle = new ElectricVehicle('Tesla', 'Model 3', 2021, 75); console.log(electricVehicle.getDetails()); // Output: Tesla Model 3 (2021) with a battery capacity of 75 kWh.
Danke für Ihr Feedback!