Udfordring: Implementer Klassearv med Extends og Super()
Opgave
Du arbejder på et transportstyringssystem, der sporer forskellige typer køretøjer. Hvert køretøj har en make, model og year. For elektriske køretøjer skal du også spore batteryCapacity. Du skal bruge arv til at udvide en generel Vehicle-klasse for specifikke elektriske køretøjer.
- Opret en
ElectricVehicle-klasse, der udviderVehicle; ElectricVehicle-konstruktøren skal accepteremake,model,yearogbatteryCapacity;- Brug
super()til at initialiseremake,modelogyeari forældreklassen; - Tilføj en
getDetails-metode tilElectricVehicle, der overskriverVehicle'sgetDetails-metode. Den skal kaldesuper.getDetails()og tilføje information ombatteryCapacity. Formatet skal være:"{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.
- Definer en klasse
ElectricVehicle, der udviderVehicle; - I
ElectricVehicle-konstruktøren tilføjes en parameterbatteryCapacityeftermake,modelogyear; - Brug
super(make, model, year)til at kalde forældreklassens konstruktør og initialiseremake,modelogyear; - Tildel
batteryCapacitytil en egenskab iElectricVehicle; - Definer en
getDetails-metode iElectricVehicle, der overskriverVehicle'sgetDetails-metode; - Inden i
getDetailsbrugessuper.getDetails()til at hente forældreklassens detaljer, og derefter tilføjes information om batterikapacitet til returstrengen.
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.
Var alt klart?
Tak for dine kommentarer!
Sektion 1. Kapitel 15
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 2.22
Udfordring: Implementer Klassearv med Extends og Super()
Stryg for at vise menuen
Opgave
Du arbejder på et transportstyringssystem, der sporer forskellige typer køretøjer. Hvert køretøj har en make, model og year. For elektriske køretøjer skal du også spore batteryCapacity. Du skal bruge arv til at udvide en generel Vehicle-klasse for specifikke elektriske køretøjer.
- Opret en
ElectricVehicle-klasse, der udviderVehicle; ElectricVehicle-konstruktøren skal accepteremake,model,yearogbatteryCapacity;- Brug
super()til at initialiseremake,modelogyeari forældreklassen; - Tilføj en
getDetails-metode tilElectricVehicle, der overskriverVehicle'sgetDetails-metode. Den skal kaldesuper.getDetails()og tilføje information ombatteryCapacity. Formatet skal være:"{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.
- Definer en klasse
ElectricVehicle, der udviderVehicle; - I
ElectricVehicle-konstruktøren tilføjes en parameterbatteryCapacityeftermake,modelogyear; - Brug
super(make, model, year)til at kalde forældreklassens konstruktør og initialiseremake,modelogyear; - Tildel
batteryCapacitytil en egenskab iElectricVehicle; - Definer en
getDetails-metode iElectricVehicle, der overskriverVehicle'sgetDetails-metode; - Inden i
getDetailsbrugessuper.getDetails()til at hente forældreklassens detaljer, og derefter tilføjes information om batterikapacitet til returstrengen.
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.
Var alt klart?
Tak for dine kommentarer!
Sektion 1. Kapitel 15