📢 Nuovo Corso Laravel API disponibile!

Modificatori di Accesso in C#

I modificatori di accesso in C# definiscono il livello di visibilità e accessibilità dei membri di una classe. Ciò determina quale parte del codice può accedere a tali membri. In questa lezione, esploreremo i diversi modificatori di accesso disponibili in C# e come influenzano l’accessibilità dei membri di una classe.

Modificatori di Accesso Disponibili

I principali modificatori di accesso in C# sono i seguenti:

  1. public: Il membro è accessibile da qualsiasi parte del codice, sia all’interno che all’esterno della classe.

  2. private: Il membro è accessibile solo all’interno della classe in cui è dichiarato. Non è accessibile da altre classi.

  3. protected: Il membro è accessibile solo all’interno della classe in cui è dichiarato e dalle classi derivate (sottoclassi).

  4. internal: Il membro è accessibile all’interno dell’assembly in cui è definito. Gli assembly diversi non possono accedere a membri interni.

  5. protected internal: Il membro è accessibile sia all’interno dell’assembly che dalle classi derivate (sottoclassi), anche se si trovano in assembly diversi.

Esempi di Utilizzo dei Modificatori

Modificatore public:

public class MiaClasse
{
public int NumeroPubblico; // Accessibile da qualsiasi parte
}

Modificatore private:

public class MiaClasse
{
private int NumeroPrivato; // Accessibile solo all'interno della classe
}

Modificatore protected:

public class MiaClasse
{
protected int NumeroProtetto; // Accessibile all'interno della classe e dalle sottoclassi
}

Modificatore internal:

internal class MiaClasse
{
internal int NumeroInterno; // Accessibile all'interno dell'assembly
}

Modificatore protected internal:

public class MiaClasse
{
protected internal int NumeroProtettoInterno; // Accessibile all'interno dell'assembly e dalle sottoclassi
}

Utilizzo dei Modificatori nei Membri

I modificatori di accesso possono essere applicati sia alle classi che ai membri di classe, come campi, proprietà e metodi.

Esempio di Modificatori nei Membri:

public class MiaClasse
{
private int numeroPrivato; // Campo privato
public int NumeroPubblico { get; set; } // Proprietà pubblica
protected void MetodoProtetto() { } // Metodo protetto
internal int NumeroInterno { get; set; } // Proprietà interna
protected internal int NumeroProtettoInterno { get; set; } // Proprietà protetta interna
}

Conclusione

I modificatori di accesso sono uno strumento importante per gestire l’accessibilità dei membri delle classi in C#. Scegliere il modificatore di accesso corretto è essenziale per garantire che il codice sia organizzato, sicuro e ben strutturato. Utilizzando i modificatori di accesso in modo appropriato, è possibile controllare quali parti del codice possono accedere ai membri della classe e mantenere una struttura coerente nel proprio programma.