C# Academy · Oppitunti

Staattiset jäsenet ja metodit

Ymmärrä, miten staattisia jäseniä ja metodeja käytetään yhteiseen toiminnallisuuteen

Oppitunti 3/610 vaihetta

Staattiset jäsenet ja metodit on ilmainen C# Academy-oppitunti CoddyKitissä. Tämä on oppitunti 3/6. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu C# Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. C# Academy-kurssilla on yhteensä 6 oppituntia.

Staattiset jäsenet ja metodit

Tervetuloa seuraavalle oppitunnille! Tässä oppitunnissa opitte C#:n staattisista jäsenistä ja metodeista, niiden tarkoituksesta ja siitä, miten niitä käytetään tehokkaasti ohjelmissa. Aloitetaan!

Staattiset jäsenet ja metodit — kuvitus 1

Mitä staattiset jäsenet ovat?

Staattiset jäsenet kuuluvat itse luokalle eivätkä mihinkään sen tiettyyn ilmentymään. Ne ovat kaikkien ilmentymien yhteisiä, ja niitä voi käyttää luomatta luokasta oliota.

Keskeinen huomio: Käyttäkää staattisia jäseniä arvoille tai metodeille, jotka ovat kaikille ilmentymille samoja.

Staattisten kenttien määrittäminen

Määritelkää staattinen kenttä käyttämällä static-avainsanaa. Esimerkki:

Keskeinen huomio: Staattiset kentät ovat kaikkien luokan ilmentymien yhteisiä.

using System;

class Counter {
    public static int Count = 0; // Static field

    public Counter() {
        Count++; // Increment count for each object created
    }
}

class Program {
    static void Main() {
        new Counter(); // Create first object
        new Counter(); // Create second object

        Console.WriteLine("Total Count: " + Counter.Count); // Outputs: Total Count: 2
    }
}

Mitä staattiset metodit ovat?

Staattisia metodeja voidaan kutsua suoraan luokan kautta ilman ilmentymää. Käyttäkää niitä apufunktioihin tai toimintoihin, jotka eivät riipu ilmentymän tiedoista. Esimerkki:

Vinkki: Käyttäkää staattisia metodeja toiminnallisuuteen, joka ei liity tiettyihin olioihin.

using System;

class MathUtils {
    public static int Add(int a, int b) {
        return a + b;
    }
}

class Program {
    static void Main() {
        int result = MathUtils.Add(5, 3); // Call static method
        Console.WriteLine("Sum: " + result); // Outputs: Sum: 8
    }
}

Staattiset ominaisuudet

Staattiset ominaisuudet mahdollistavat staattisten kenttien hallitun käytön. Esimerkki:

Keskeinen huomio: Staattiset ominaisuudet tarjoavat selkeän tavan käyttää ja muokata staattisia kenttiä.

using System;

class Configuration {
    private static string appName = "MyApp"; // Static field

    public static string AppName { // Static property
        get { return appName; }
        set { appName = value; }
    }
}

class Program {
    static void Main() {
        Console.WriteLine("App Name: " + Configuration.AppName); // Get static property
        Configuration.AppName = "SuperApp"; // Set static property
        Console.WriteLine("Updated App Name: " + Configuration.AppName);
    }
}

Staattiset konstruktorit

Staattista konstruktoria kutsutaan automaattisesti staattisten kenttien alustamiseksi tai muiden luokan kertaluonteisten tehtävien suorittamiseksi. Esimerkki:

Vinkki: Staattisilla konstruktoreilla ei voi olla käyttöoikeusmääritteitä tai parametreja, ja niitä kutsutaan vain kerran.

using System;

class Logger {
    public static string LogFilePath;

    // Static constructor
    static Logger() {
        LogFilePath = "logs.txt"; // Initialize static field
        Console.WriteLine("Static constructor called.");
    }
}

class Program {
    static void Main() {
        Console.WriteLine("Log File Path: " + Logger.LogFilePath);
    }
}

Harjoitustehtävä

Luokaa luokka TemperatureConverter, jossa on staattiset metodit CelsiusToFahrenheit() ja FahrenheitToCelsius() lämpötilan muuntamista varten. Esimerkki:

using System;

class TemperatureConverter {
    public static double CelsiusToFahrenheit(double celsius) {
        return (celsius * 9 / 5) + 32;
    }

    public static double FahrenheitToCelsius(double fahrenheit) {
        return (fahrenheit - 32) * 5 / 9;
    }
}

class Program {
    static void Main() {
        Console.WriteLine("25°C to Fahrenheit: " + TemperatureConverter.CelsiusToFahrenheit(25));
        Console.WriteLine("77°F to Celsius: " + TemperatureConverter.FahrenheitToCelsius(77));
    }
}

Staattisten jäsenten parhaat käytännöt

Seuraavassa on joitakin parhaita käytäntöjä:

  • Käyttäkää staattisia jäseniä toiminnallisuuteen tai tietoihin, jotka eivät riipu luokan instansseista.
  • Välttäkää staattisten kenttien liiallista käyttöä modulaarisuuden ja testattavuuden säilyttämiseksi.
  • Käyttäkää staattisia konstruktoreita staattisten tietojen alustamiseen kerran sovelluksen elinkaaren aikana.

Vinkki: Pitäkää staattiset jäsenet yksinkertaisina ja selkeästi rajattuina.

Hienoa työtä!

Onnittelut! Olette oppineet käyttämään staattisia jäseniä, metodeja ja konstruktoreita luokkatasoisen toiminnallisuuden määrittämiseen C#:ssa. Seuraavassa oppitunnissa tutustumme enum- ja struct-tyyppeihin, joiden avulla hallitaan kiinteitä arvojoukkoja ja ryhmitellään toisiinsa liittyviä tietoja. Jatketaan koodaamista!

Staattiset jäsenet ja metodit — kuvitus 10
Aloita maksutta

Opi C# tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
93
Oppitunnit
346

Usein kysytyt kysymykset

Onko oppitunti ”Staattiset jäsenet ja metodit” ilmainen?

Kyllä – oppitunnin ”Staattiset jäsenet ja metodit” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko C# Academy-kurssin, päivitä CoddyKit PROhon. C# Academy-kurssilla on yhteensä 6 oppituntia.

Mitä opin oppitunnilla ”Staattiset jäsenet ja metodit”?

Ymmärrä, miten staattisia jäseniä ja metodeja käytetään yhteiseen toiminnallisuuteen Harjoittelet C# Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni C# Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin C# Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/6.

Kuinka kauan ”Staattiset jäsenet ja metodit”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä C# Academy-oppitunnilla?

Kyllä. Jokainen C# Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Johdatus rajapintoihin
  2. Abstraktit luokat
  3. Staattiset jäsenet ja metodit
  4. Enumeraatiot ja rakenteet
  5. Delegaatit ja tapahtumat
  6. Kokoelmien käsittely: listat, sanakirjat ja jonot
← Takaisin: C# Academy