Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Utfordring: `static`-nøkkelord | OOP-Grunnprinsipper
C# Utover Det Grunnleggende

bookUtfordring: `static`-nøkkelord

I denne oppgaven skal du:

  • Opprette et nytt privat felt kalt totalCars av typen double som holder oversikt over totalt antall Car-objekter som er opprettet;
  • Lage en getter-metode kalt getTotalCars som returnerer antall objekter;
  • Sørge for at verdien til feltet totalCars økes hver gang et nytt Car-objekt opprettes.
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 som holder oversikt over antall objekter bør være statisk fordi det alltid lagrer en verdi.
  2. Det ble forklart i kapittelet om tilgangsmodifikatorer at en getter-metode ganske enkelt er en offentlig metode som returnerer verdien til et privat felt. I dette tilfellet skal getTotalCars returnere totalCars.
  3. Metoden getTotalCars bør også være statisk fordi vi ønsker å bruke den uten 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()); } }
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 6

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Awesome!

Completion rate improved to 2.04

bookUtfordring: `static`-nøkkelord

Sveip for å vise menyen

I denne oppgaven skal du:

  • Opprette et nytt privat felt kalt totalCars av typen double som holder oversikt over totalt antall Car-objekter som er opprettet;
  • Lage en getter-metode kalt getTotalCars som returnerer antall objekter;
  • Sørge for at verdien til feltet totalCars økes hver gang et nytt Car-objekt opprettes.
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 som holder oversikt over antall objekter bør være statisk fordi det alltid lagrer en verdi.
  2. Det ble forklart i kapittelet om tilgangsmodifikatorer at en getter-metode ganske enkelt er en offentlig metode som returnerer verdien til et privat felt. I dette tilfellet skal getTotalCars returnere totalCars.
  3. Metoden getTotalCars bør også være statisk fordi vi ønsker å bruke den uten 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()); } }
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 6
some-alt