Campi, proprietà automatiche e inizializzatori di oggetti
Definisca campi e proprietà automatiche e crei oggetti con inizializzatori di oggetti concisi.
Campi, proprietà automatiche e inizializzatori di oggetti è una lezione C# Academy gratuita su CoddyKit. Questa è la lezione 1 di 3. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento C# Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso C# Academy include 3 lezioni in totale.
Panoramica sulle basi delle classi
Obiettivo: Creare classi semplici.
- Campi che contengono dati grezzi
- Proprietà automatiche che espongono i dati in modo ordinato
- Inizializzatori di oggetti che impostano i valori al momento della creazione
Campi in una classe
I campi sono variabili all'interno di una classe. Per i dati pubblici, le proprietà sono più sicure.
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);
}
}
Proprietà automatiche
Le proprietà automatiche espongono i dati tramite get/set senza dover scrivere un campo. È possibile impostare valori predefiniti semplici.
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)");
}
}
Inizializzatori di oggetti
Gli inizializzatori di oggetti impostano le proprietà al momento della creazione, mantenendo il codice breve e chiaro.
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 + ")");
}
}
Campi e proprietà a confronto
Linee guida:
- Usi i campi privati per l'archiviazione interna.
- Esponga proprietà pubbliche, così potrà aggiungere in seguito la convalida senza interrompere il codice chiamante.
- Mantenga i nomi chiari e semplici.
Campi e proprietà insieme
Combini un campo privato con una proprietà per controllare le scritture (semplici invarianti).
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);
}
}
Concetto di proprietà automatica
Riepilogo
Riepilogo: Definisca i dati con i campi ed esponga i dati tramite proprietà automatiche. Usi gli inizializzatori di oggetti per impostare i valori al momento della creazione.
Domande Frequenti
La lezione «Campi, proprietà automatiche e inizializzatori di oggetti» è gratuita?
Sì — il testo completo di «Campi, proprietà automatiche e inizializzatori di oggetti» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso C# Academy, passa a CoddyKit PRO. Il corso C# Academy include 3 lezioni in totale.
Cosa imparerò in «Campi, proprietà automatiche e inizializzatori di oggetti»?
Definisca campi e proprietà automatiche e crei oggetti con inizializzatori di oggetti concisi. Eserciti C# Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare C# Academy?
Non è richiesta alcuna esperienza precedente. C# Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 3.
Quanto tempo richiede la lezione «Campi, proprietà automatiche e inizializzatori di oggetti»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione C# Academy?
Sì. Ogni lezione C# Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Campi, proprietà automatiche e inizializzatori di oggetti
- Costruttori e membri statici
- Incapsulamento e invarianti