Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Udfordring: `static` Nøgleord | OOP-Grundprincipper
C# Ud Over Det Grundlæggende

bookUdfordring: `static` Nøgleord

I denne opgave skal du:

  • Oprette et nyt privat felt kaldet totalCars af typen double, som holder styr på det samlede antal oprettede Car-objekter;
  • Oprette en getter-metode kaldet getTotalCars, som blot returnerer antallet af objekter;
  • Sikre, at værdien af feltet totalCars øges, hver gang et nyt Car-objekt oprettes.
index.cs

index.cs

copy
1234567891011121314151617181920212223242526272829303132333435363738
using System; class Car { int modelYear; double mileage; string brandName; public Car(string brandName, int modelYear, double mileage) { this.brandName = brandName; this.modelYear = modelYear; this.mileage = mileage; // Write code below this line // Write code above this line } // Write code below this line // Write code above this line } class ConsoleApp { static void Main() { Console.WriteLine(Car.getTotalCars()); Car car1 = new Car("Toyota", 2022, 25.5); Car car2 = new Car("Honda", 2020, 30.2); Car car3 = new Car("Ford", 2021, 28.8); Console.WriteLine(Car.getTotalCars()); } }
  1. Feltet, der holder styr på antallet af objekter, skal være statisk, fordi det altid gemmer nogle data.
  2. Det blev forklaret i kapitlet om adgangsmodifikatorer, at en getter-metode blot er en public-metode, som returnerer værdien af et privat felt. I dette tilfælde skal getTotalCars returnere totalCars.
  3. Metoden getTotalCars skal også være statisk, fordi vi ønsker at bruge den uden en instans.
index.cs

index.cs

copy
123456789101112131415161718192021222324252627282930313233343536373839404142
using System; class Car { int modelYear; double mileage; string brandName; public Car(string brandName, int modelYear, double mileage) { this.brandName = brandName; this.modelYear = modelYear; this.mileage = mileage; // Write code below this line totalCars += 1; // Write code above this line } // Write code below this line private static double totalCars; public static double getTotalCars() { return totalCars; } // Write code above this line } class ConsoleApp { static void Main() { Console.WriteLine(Car.getTotalCars()); Car car1 = new Car("Toyota", 2022, 25.5); Car car2 = new Car("Honda", 2020, 30.2); Car car3 = new Car("Ford", 2021, 28.8); Console.WriteLine(Car.getTotalCars()); } }
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 6

Spørg AI

expand

Spørg AI

ChatGPT

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.04

bookUdfordring: `static` Nøgleord

Stryg for at vise menuen

I denne opgave skal du:

  • Oprette et nyt privat felt kaldet totalCars af typen double, som holder styr på det samlede antal oprettede Car-objekter;
  • Oprette en getter-metode kaldet getTotalCars, som blot returnerer antallet af objekter;
  • Sikre, at værdien af feltet totalCars øges, hver gang et nyt Car-objekt oprettes.
index.cs

index.cs

copy
1234567891011121314151617181920212223242526272829303132333435363738
using System; class Car { int modelYear; double mileage; string brandName; public Car(string brandName, int modelYear, double mileage) { this.brandName = brandName; this.modelYear = modelYear; this.mileage = mileage; // Write code below this line // Write code above this line } // Write code below this line // Write code above this line } class ConsoleApp { static void Main() { Console.WriteLine(Car.getTotalCars()); Car car1 = new Car("Toyota", 2022, 25.5); Car car2 = new Car("Honda", 2020, 30.2); Car car3 = new Car("Ford", 2021, 28.8); Console.WriteLine(Car.getTotalCars()); } }
  1. Feltet, der holder styr på antallet af objekter, skal være statisk, fordi det altid gemmer nogle data.
  2. Det blev forklaret i kapitlet om adgangsmodifikatorer, at en getter-metode blot er en public-metode, som returnerer værdien af et privat felt. I dette tilfælde skal getTotalCars returnere totalCars.
  3. Metoden getTotalCars skal også være statisk, fordi vi ønsker at bruge den uden en instans.
index.cs

index.cs

copy
123456789101112131415161718192021222324252627282930313233343536373839404142
using System; class Car { int modelYear; double mileage; string brandName; public Car(string brandName, int modelYear, double mileage) { this.brandName = brandName; this.modelYear = modelYear; this.mileage = mileage; // Write code below this line totalCars += 1; // Write code above this line } // Write code below this line private static double totalCars; public static double getTotalCars() { return totalCars; } // Write code above this line } class ConsoleApp { static void Main() { Console.WriteLine(Car.getTotalCars()); Car car1 = new Car("Toyota", 2022, 25.5); Car car2 = new Car("Honda", 2020, 30.2); Car car3 = new Car("Ford", 2021, 28.8); Console.WriteLine(Car.getTotalCars()); } }
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 6
some-alt