Modifikatori pristupa (specifikatori) u C# s primjerima programa

Što je modifikator pristupa (specifikator) u C#?

Modifikatori pristupa ili Specifikatori pristupa u C# su ključne riječi koje se koriste za definiranje vidljivosti svojstva klase ili metode. Koristi se kada ne želite da drugi programi vide svojstva ili metode klase. Modifikatori pristupa ograničavaju pristup tako da drugi programi ne mogu vidjeti svojstva ili metode klase.

Postoji 6 vrsta modifikatora pristupa u C#:

  • Privatni
  • javnost
  • zaštićen
  • interni
  • Zaštićeno unutarnje
  • Privatno zaštićeno

Naučit ćemo o glavnim modifikatorima pristupa u C# s primjerima programa kako je objašnjeno u nastavku.

Modifikatori privatnog pristupa u C#

Kada je modifikator privatnog pristupa pridružen ili svojstvu ili metodi, to znači da se tim članovima ne može pristupiti iz bilo kojeg vanjskog programa.

Primjer modifikatora privatnog pristupa

Uzmimo primjer i vidimo što se događa kada koristimo modifikator privatnog pristupa.

Modificirajmo trenutni kod u našoj datoteci Tutorial.cs. U metodi SetTutorial, promijenimo ključnu riječ public u private.

Modifikatori privatnog pristupa

Prijeđimo sada na našu datoteku Program.cs. Primijetit ćete da ispod metode SetTutorial postoji crvena vijugava linija.

Budući da smo metodu SetTutorial sada proglasili privatnom u našoj klasi Tutorial, Visual Studio je to otkrio. Isticanjem je korisniku rekao da sada ova metoda neće raditi iz datoteke Program.cs.

Modifikator privatnog pristupa

C# modifikatori javnog pristupa

Kada je modifikator javnog pristupa pridružen ili svojstvu ili metodi, to znači da se tim članovima može pristupiti iz bilo kojeg vanjskog programa. To smo već vidjeli u našim ranijim primjerima.

Primjer modifikatora javnog pristupa

C# modifikatori javnog pristupa

Budući da smo definirali naše metode kao javne u klasi Tutorial, njima se može pristupiti iz datoteke Program.cs.

Modifikatori zaštićenog pristupa u C#

Kada je zaštićeni modifikator pristupa priložen ili svojstvu ili metodi, to znači da tim članovima može pristupiti samo klase naslijeđene od struje razred. Ovo će biti detaljnije objašnjeno u klasi Nasljeđivanje.

C# interni modifikatori pristupa

Kada je interni modifikator pristupa pridružen ili svojstvu ili metodi, tim članovima može pristupiti samo interni program, ali ne i eksterni program.

C# konstruktor

C# Konstruktori se koriste za inicijaliziranje vrijednosti polja klase kada se kreiraju njihovi odgovarajući objekti. Konstruktor je metoda koja ima isto ime kao i klasa. Ako je konstruktor definiran u klasi, tada će dati prvu metodu koja se poziva kada se objekt kreira. Pretpostavimo da imamo klasu pod nazivom Zaposlenik. Metoda konstruktora bi također bila nazvana Employee().

O metodama konstruktora treba obratiti pozornost na sljedeće ključne stvari

  1. C# zadani modifikator pristupa za konstruktor mora biti javno dostupan.
  2. Ne bi trebalo postojati povratni tip za metodu konstruktora.

Primjer C# konstruktora

Pogledajmo sada kako možemo uključiti korisnika konstruktora u naš kod. Koristit ćemo konstruktore za inicijalizaciju polja TutorialID i TutorialName na neke zadane vrijednosti kada se objekt stvori.

Korak 1) Prvi korak je stvaranje konstruktora za našu klasu Tutorial. U ovom koraku dodajemo donji kod u datoteku Tutorial.cs.

C# konstruktor

Objašnjenje koda:-

  1. Prvo dodajemo novu metodu koja ima isto ime kao i klasa. Budući da je to isto ime kao i klasa, C# ovo tretira kao metodu konstruktora. Sada kad god pozivajuća metoda kreira objekt ove klase, ova metoda će biti pozvana prema zadanim postavkama.
  2. U konstruktoru vodiča, postavljamo vrijednost TutorialID-a na 0 i TutorialName na "Default". Dakle, kad god se kreira objekt, ova će polja uvijek imati te zadane vrijednosti.

Prijeđimo sada na našu datoteku Program.cs i samo uklonimo redak koji poziva metodu SetTutorial. To je zato što samo želimo vidjeti kako konstruktor radi.

C# konstruktor

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(); 
  }
 }
}

Objašnjenje koda:-

  1. Prvi korak je kreiranje objekta za klasu Tutorial. To se radi pomoću ključne riječi 'new'.
  2. Koristimo metodu GetTutorial klase Tutorial da dobijemo TutorialName. To se zatim prikazuje na konzoli putem metode Console.WriteLine.

Ako se gornji kod ispravno unese i program se izvrši, prikazat će se sljedeći izlaz.

Izlaz:

C# konstruktor

Iz izlaza možemo vidjeti da je konstruktor doista pozvan i da je vrijednost TutorialName postavljena na "Default".

Bilješka: Ovdje se vrijednost "default" dohvaća iz konstruktora.

Rezime

  • C# Modifikatori pristupa ili Specifikatori pristupa koriste se za definiranje vidljivosti svojstva klase ili metode.
  • Kada je modifikator privatnog pristupa pridružen ili svojstvu ili metodi, to znači da se tim članovima ne može pristupiti iz bilo kojeg vanjskog programa.
  • Kada je modifikator javnog pristupa pridružen ili svojstvu ili metodi, to znači da se tim članovima može pristupiti iz bilo kojeg vanjskog programa.
  • Kada je modifikator zaštićenog pristupa pridružen ili svojstvu ili metodi, to znači da tim članovima mogu pristupiti samo klase naslijeđene od trenutne klase.
  • Kada je interni modifikator pristupa pridružen ili svojstvu ili metodi, tim članovima može pristupiti samo interni program, ali ne i eksterni program.
  • C# konstruktori koriste se za inicijaliziranje vrijednosti polja klase kada se kreiraju njihovi odgovarajući objekti.