English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C# 类 (Class)

Le classi sono come i piani di un oggetto specifico. Nel mondo reale, ogni oggetto ha alcuni colori, forme e funzioni - ad esempio, la Ferrari di lusso. La Ferrari è un oggetto del tipo di veicolo di lusso. Il veicolo di lusso è una classe che indica alcune caratteristiche come la velocità, il colore, la forma, l'interni, ecc. Pertanto, qualsiasi azienda che produce auto che soddisfano questi requisiti è un oggetto del tipo di veicolo di lusso. Ad esempio, ogni auto BMW, Lamborghini, Cadillac è un oggetto della classe veicolo di lusso. Qui, “veicolo di lusso” è una classe e ogni veicolo reale è un oggetto della classe veicolo di lusso.

Allo stesso modo, nella progettazione orientata agli oggetti, le classi definiscono alcune proprietà, campi, eventi, metodi, ecc. Le classi definiscono il tipo di dati e le funzionalità che avranno gli oggetti.

Le classi ti permettono di creare tipi personalizzati raggruppando variabili di altri tipi, metodi e eventi. In progettazione orientata agli oggetti (OOP), le classi definiscono alcune proprietà, campi, eventi, metodi, ecc. Le classi definiscono il tipo di dati e le funzionalità che avranno gli oggetti.

In C#, è possibile definire una classe utilizzando la parola chiave class.

public class MyClass
{}
    public string  myField = string.Empty;
    public MyClass()
    {}
    {}
    public void MyMethod(int parameter1, string parameter2)
    {}
        Console.WriteLine("Primo Parametro {0}, secondo parametro {1}", parameter1, parameter2);
    {}
    public int MyAutoImplementedProperty { get; set; }
    private int myPropertyVar;
    
    public int MyProperty
    {}
        get { return myPropertyVar; }
        set { myPropertyVar = value; }
    {} 
{}

La seguente immagine mostra i componenti principali delle classi C#.

Classe C#

Modificatori di accesso C#

I修饰ificatori di accesso si applicano alle dichiarazioni di classi, metodi, proprietà, campi e altri membri. Definiscono l'accessibilità della classe e dei suoi membri. Pubblico, privato, protetto e interno sono i修饰ificatori di accesso in C#. Ne parleremo nel capitolo sui simboli chiave.

Campo C#

Questo campo è una variabile di livello di classe con un valore. Di solito, i membri dei campi devono avere un修饰ificatore di accesso privato e essere utilizzati insieme alle proprietà.

Costruttore C#

Un'istanza di classe può avere un costruttore parametrizzato o senza parametri. Durante la creazione di un'istanza della classe, viene chiamato il costruttore. È possibile definire il costruttore utilizzando修饰符 di accesso e nome della classe:

<modificatori di accesso> <class name>(){  }
class MyClass
{}
    public MyClass()
    {}
    {}
{}

Metodo C#

È possibile definire i metodi utilizzando il seguente modello:

{access modifier} {return type} MethodName({parameterType parameterName})
public void MyMethod(int parameter1, string parameter2)
{}
    // Scrivi qui il codice del tuo metodo. 
{}

Proprietà

Puoi definire le proprietà utilizzando getter e setter, come segue:

private int _myPropertyVar;
public int MyProperty
{}
    get { return _myPropertyVar; }
    set { _myPropertyVar = value; }
{}

Proprietà

Puoi anche applicare alcune altre logiche in get e set, come mostrato negli esempi seguenti.

private int _myPropertyVar;
public int MyProperty
{}
    get {
        return _myPropertyVar / 2;
    {}
    set {
        if (value > 100)
            _myPropertyVar = 100;
        else
            _myPropertyVar = value; ;
    {}
{}

Proprietà automatiche

Dalla versione 3.0 di C#, se non desideri applicare alcune logiche in get o set, puoi dichiarare facilmente le proprietà.

Di seguito è riportato un esempio di proprietà automatiche:

public int MyAutoImplementedProperty { get; set; }

Notare che nell'esempio di proprietà sopra non ci sono campi di riserva privati. I campi supportati vengono creati automaticamente dal compilatore. Puoi utilizzare le proprietà automatiche come faresti con le proprietà di classe regolari. Le proprietà automatiche implementate sono solo per facilitare la dichiarazione delle proprietà.

Spazio dei nomi

Lo spazio dei nomi è un contenitore per un insieme di classi e spazi dei nomi correlati. Lo spazio dei nomi viene anche utilizzato per fornire un nome unico alle classi all'interno dello spazio dei nomi. Lo spazio dei nomi e le classi vengono rappresentati con il punto (.).

In C#, è possibile utilizzare la parola chiave namespace per definire uno spazio dei nomi.

namespace CSharpTutorials
{}
    class MyClass
    {}
    {}
{}

Nell'esempio sopra, il nome completo della classe MyClass è CSharpTutorials.MyClass.

Il namespace può contenere altri namespace. I namespace interni possono essere separati con il punto (.).

namespace CSharpTutorials.Examples
{}
    class MyClassExample
    {}
    {}
{}

Nell'esempio sopra, il nome completo della classe MyClassExample è CSharpTutorials.Examples.MyClassExample.