C# Academy · leksjon

Felter, auto-properties, object initializers

Definer felter og auto-properties, og opprett objekter med korte object initializers.

Leksjon 1 av 38 trinn

Felter, auto-properties, object initializers er en gratis leksjon i C# Academy på CoddyKit. Dette er leksjon 1 av 3. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i C# Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i C# Academy inneholder totalt 3 leksjoner.

Oversikt over grunnleggende klasser

Mål: Bygg enkle klasser.

  • Felt inneholder rådata
  • Automatiske egenskaper eksponerer data på en ryddig måte
  • Objektinitialisering angir verdier når objektet opprettes

Felt i en klasse

Felt er variabler inne i en klasse. For offentlige data er egenskaper sikrere.

using System;

// Fields store raw data inside a class
public class Player
{
  public string name; // field (usually prefer properties for public APIs)
  public int level;
}

public class Program
{
  public static void Main(string[] args)
  {
    Player p = new Player();
    p.name = "Ada";
    p.level = 1;
    Console.WriteLine("Player " + p.name + " level " + p.level);
  }
}

Automatiske egenskaper

Automatiske egenskaper eksponerer data via get/set uten at det er nødvendig å skrive et felt. Enkle standardverdier kan angis.

using System;

// Auto-properties generate a hidden backing field
public class Book
{
  public string Title { get; set; }
  public string Author { get; set; }
  public int Pages { get; set; } = 0; // auto-property initializer (C# 6)
}

public class Program
{
  public static void Main(string[] args)
  {
    Book b = new Book();
    b.Title = "Clean Code";
    b.Author = "Robert C. Martin";
    b.Pages = 464;
    Console.WriteLine(b.Title + " by " + b.Author + " (" + b.Pages + " pages)");
  }
}

Objektinitialisering

Objektinitialisering angir egenskaper når objektet opprettes, slik at koden blir kort og tydelig.

using System;

public class Person
{
  public string Name { get; set; }
  public int Age { get; set; }
}

public class Program
{
  public static void Main(string[] args)
  {
    // Object initializer calls set-accessors after construction
    Person p = new Person { Name = "Alan", Age = 30 };
    Console.WriteLine(p.Name + " (" + p.Age + ")");
  }
}

Felt kontra egenskaper

Retningslinje:

  • Bruk private felt til intern lagring.
  • Eksponer offentlige egenskaper, slik at validering kan legges til senere uten å bryte kallende kode.
  • Hold navnene tydelige og enkle.

Felt og egenskaper sammen

Kombiner et privat felt med en egenskap for å kontrollere skriving (enkle invarianter).

using System;

// Private fields + public properties pattern
public class Product
{
  private int _stock;                   // field (internal storage)
  public string Name { get; set; }      // property (public API)
  public int Stock                      // property with simple guard
  {
    get { return _stock; }
    set
    {
      if (value < 0) value = 0; // simple safety for beginners
      _stock = value;
    }
  }
}

public class Program
{
  public static void Main(string[] args)
  {
    Product p = new Product { Name = "Pen", Stock = 5 };
    p.Stock = -3; // setter clamps to 0
    Console.WriteLine(p.Name + " stock = " + p.Stock);
  }
}

Konseptet automatiske egenskaper

Hurtigsjekk: Hva er en automatisk egenskap i C#?

Repetisjon

Repetisjon: Definer data med felt, og eksponer dem via automatiske egenskaper. Bruk objektinitialisering til å angi verdier når objektet opprettes.

Gratis å komme i gang

Lær deg C# med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
93
Leksjoner
346

Ofte stilte spørsmål

Er leksjonen «Felter, auto-properties, object initializers» gratis?

Ja – hele teksten i «Felter, auto-properties, object initializers» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av C# Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i C# Academy inneholder totalt 3 leksjoner.

Hva lærer jeg i «Felter, auto-properties, object initializers»?

Definer felter og auto-properties, og opprett objekter med korte object initializers. Du øver på C# Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med C# Academy?

Ingen tidligere erfaring er nødvendig. C# Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 3.

Hvor lang tid tar leksjonen «Felter, auto-properties, object initializers»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne C# Academy-leksjonen?

Ja. Alle C# Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Felter, auto-properties, object initializers
  2. Konstruktører og statiske medlemmer
  3. Inkapsulering og invarianter
← Tilbake til C# Academy