Modificatori di accesso (specificatori) in C# con esempi di programmi

Che cos'รจ il modificatore di accesso (specificatore) in C#?

Modificatori di accesso o Gli specificatori di accesso in C# sono le parole chiave utilizzate per definire la visibilitร  di una proprietร  o di un metodo di classe. Viene utilizzato quando non vuoi che altri programmi vedano le proprietร  o i metodi di una classe. I modificatori di accesso limitano l'accesso in modo che altri programmi non possano vedere le proprietร  o i metodi di una classe.

Esistono 6 tipi di modificatori di accesso in C#:

  • Privata
  • Pubblico
  • Protetta
  • Interno
  • Interno protetto
  • Privato Protetto

Impareremo i principali modificatori di accesso in C# con esempi di programmi come spiegato di seguito.

Modificatori di accesso privato in C#

Quando il modificatore di accesso privato รจ collegato a una proprietร  o a un metodo, significa che non รจ possibile accedere a tali membri da alcun programma esterno.

Esempio di modificatore di accesso privato

Facciamo un esempio e vediamo cosa succede quando utilizziamo il modificatore di accesso privato.

Modifichiamo il codice corrente nel nostro file Tutorial.cs. Nel metodo SetTutorial, cambiamo la parola chiave public in private.

Modificatori di accesso privato

Passiamo ora al nostro file Program.cs. Noterai che c'รจ una linea ondulata rossa sotto il metodo SetTutorial.

Poichรฉ abbiamo dichiarato il metodo SetTutorial come privato nella nostra classe Tutorial, Visual Studio lo ha rilevato. Ha comunicato all'utente evidenziandolo che ora questo metodo non funzionerร  dal file Program.cs.

Modificatore di accesso privato

Modificatori dell'accesso pubblico C#

Quando il modificatore di accesso pubblico รจ collegato a una proprietร  o a un metodo, significa che รจ possibile accedere a tali membri da qualsiasi programma esterno. Lo abbiamo giร  visto nei nostri esempi precedenti.

Esempio di modificatore di accesso pubblico

Modificatori dell'accesso pubblico C#

Poichรฉ abbiamo definito i nostri metodi come pubblici nella classe Tutorial, รจ possibile accedervi dal file Program.cs.

Modificatori di accesso protetto in C#

Quando il modificatore di accesso protetto รจ collegato a una proprietร  o a un metodo, significa che รจ possibile accedere a tali membri solo da classi ereditate dalla corrente classe. Ciรฒ verrร  spiegato piรน dettagliatamente nella classe Ereditarietร .

Modificatori di accesso interno C#

Quando un modificatore di accesso interno รจ collegato a una proprietร  o a un metodo, รจ possibile accedere a tali membri solo da un programma interno ma non da un programma esterno.

Costruttore C#

C# I costruttori vengono utilizzati per inizializzare i valori dei campi della classe quando vengono creati gli oggetti corrispondenti. Un costruttore รจ un metodo che ha lo stesso nome di quello della classe. Se un costruttore รจ definito in una classe, fornirร  il primo metodo che viene chiamato quando viene creato un oggetto. Supponiamo di avere una classe chiamata Employee. Anche il metodo di costruzione verrebbe denominato Employee().

Le seguenti cose fondamentali devono essere notate sui metodi del costruttore

  1. Il modificatore di accesso predefinito C# per il costruttore deve essere reso pubblico.
  2. Non dovrebbe esserci alcun tipo restituito per il metodo del costruttore.

Esempio di costruttore C#

Vediamo ora come possiamo incorporare l'utente dei costruttori nel nostro codice. Utilizzeremo i costruttori per inizializzare i campi TutorialID e TutorialName su alcuni valori predefiniti quando viene creato l'oggetto.

Passo 1) Il primo passo รจ creare il costruttore per la nostra classe Tutorial. In questo passaggio, aggiungiamo il codice seguente al file Tutorial.cs.

Costruttore C#

Spiegazione del codice: -

  1. Per prima cosa aggiungiamo un nuovo metodo che ha lo stesso nome di quello della classe. Poichรฉ ha lo stesso nome della classe, C# lo considera un metodo di costruzione. Quindi ora ogni volta che il metodo chiamante crea un oggetto di questa classe, questo metodo verrร  chiamato per impostazione predefinita.
  2. Nel costruttore del Tutorial, impostiamo il valore di TutorialID su 0 e TutorialName su "Default". Pertanto, ogni volta che viene creato un oggetto, questi campi avranno sempre questi valori predefiniti.

Passiamo ora al file Program.cs e rimuoviamo semplicemente la riga che chiama il metodo SetTutorial. Questo perchรฉ vogliamo solo vedere come funziona il costruttore.

Costruttore C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Tutorial
 {
  public int TutorialID; 
  public string TutorialName;
  
  public Tutorial()
  {
   TutorialID=0;
   TutorialName="Default";
  }
  public void SetTutorial(int pID,string pName) 
  {
   TutorialID=pID;
   TutorialName=pName;
  }
  public String GetTutorial()
  {
   return TutorialName;
  }
  
  static void Main(string[] args) 
  {
   Tutorial pTutor=new Tutorial();
    
   Console.WriteLine(pTutor.GetTutorial());
    
   Console.ReadKey(); 
  }
 }
}

Spiegazione del codice: -

  1. Il primo passo รจ creare un oggetto per la classe Tutorial. Questo viene fatto tramite la parola chiave "nuovo".
  2. Usiamo il metodo GetTutorial della classe Tutorial per ottenere TutorialName. Questo viene quindi visualizzato sulla console tramite il metodo Console.WriteLine.

Se il codice sopra riportato viene inserito correttamente e il programma viene eseguito, verrร  visualizzato il seguente output.

Produzione:

Costruttore C#

Dall'output possiamo vedere che il costruttore รจ stato effettivamente chiamato e che il valore di TutorialName รจ stato impostato su "Default".

Nota: Qui il valore "default" viene recuperato dal costruttore.

Sintesi

  • I modificatori di accesso o gli specificatori di accesso C# vengono utilizzati per definire la visibilitร  di una proprietร  o di un metodo di classe.
  • Quando il modificatore di accesso privato รจ collegato a una proprietร  o a un metodo, significa che non รจ possibile accedere a tali membri da alcun programma esterno.
  • Quando il modificatore di accesso pubblico รจ collegato a una proprietร  o a un metodo, significa che รจ possibile accedere a tali membri da qualsiasi programma esterno.
  • Quando il modificatore di accesso protetto รจ collegato a una proprietร  o a un metodo, significa che a tali membri possono accedere solo le classi ereditate dalla classe corrente.
  • Quando un modificatore di accesso interno รจ collegato a una proprietร  o a un metodo, รจ possibile accedere a tali membri solo da un programma interno ma non da un programma esterno.
  • I costruttori C# vengono utilizzati per inizializzare i valori dei campi della classe quando vengono creati gli oggetti corrispondenti.

Riassumi questo post con: