C # Hozzáférés-módosítók (specifikátorok) a program példájával

Tartalomjegyzék:

Anonim

Ebben az oktatóanyagban megtanulja-

  • Hozzáférés-módosítók
  • Konstruktőr

Hozzáférés-módosítók

A C # hozzáférési módosítók vagy hozzáférés-specifikátorok azok a kulcsszavak, amelyekkel meghatározható egy osztálytulajdonság vagy módszer láthatósága. Akkor használják, ha nem szeretné, hogy más programok lássák az osztály tulajdonságait vagy metódusait. A hozzáférés-módosítók korlátozzák a hozzáférést, így más programok nem láthatják az osztály tulajdonságait vagy metódusait.

A C # -ben 3 típusú hozzáférés-módosító létezik. Megtanuljuk a hozzáférés-módosítókat C # -ban az alábbiakban ismertetett program-példával.

Privát hozzáférés módosítók

Amikor ez a hozzáférési specifikáció a C # -ban egy tulajdonsághoz vagy egy metódushoz van csatolva, az azt jelenti, hogy ezek a tagok nem férhetnek hozzá semmilyen külső programból.

Vegyünk egy példát, és nézzük meg, mi történik, ha a privát hozzáférés módosítót használjuk.

Módosítsuk az aktuális kódot a Tutorial.cs fájlban. A SetTutorial metódusban változtassuk a nyilvános kulcsszót privátra.

Most térjünk át a Program.cs fájlra. Észre fogja venni, hogy a SetTutorial metódus alatt piros, mocorgós vonal található.

Mivel most a SetTutorial metódust privátnak nyilvánítottuk a Tutorial osztályunkban, a Visual Studio ezt észlelte. Kiemelésével elmondta a felhasználónak, hogy most ez a módszer nem fog működni a Program.cs fájlból.

Nyilvános hozzáférés módosítói

Ha ez a hozzáférés-módosító a C # -ban egy tulajdonsághoz vagy egy módszerhez van csatolva, akkor ez azt jelenti, hogy ezek a tagok bármely külső programból elérhetők. Korábbi példáinkban ezt már láthattuk.

Mivel módszereinket nyilvánosként definiáltuk a Tutorial osztályban, ezek a Program.cs fájlból érhetők el.

Védett hozzáférés-módosítók

Ha ez a hozzáférés-módosító egy tulajdonsághoz vagy egy módszerhez van csatolva, az azt jelenti, hogy ezek a tagok csak az aktuális osztályból örökölt osztályok által férhetnek hozzá. Ezt részletesebben az Öröklés osztályban fejtjük ki.

C # Konstruktor

A konstruktorok az osztálymezők értékeinek inicializálására szolgálnak, amikor a megfelelő objektumokat létrehozzák. A konstruktor olyan módszer, amelynek neve megegyezik az osztály nevével. Ha egy konstruktort definiálnak egy osztályban, akkor az biztosítja az első módszert, amelyet egy objektum létrehozásakor hívnak meg. Tegyük fel, ha lenne egy alkalmazottunk nevű osztálya. A konstruktor módszert Employee () néven is megneveznénk.

A következő kulcsfontosságú dolgokat kell megjegyezni a konstruktor módszerekkel kapcsolatban

  1. A konstruktor C # alapértelmezett hozzáférés-módosítóját nyilvánossá kell tenni.
  2. A konstruktor metódusnak nem lehet visszatérési típusa.

Most nézzük meg, hogyan építhetjük be a konstruktor felhasználóját a kódunkba. A konstruktorok segítségével inicializáljuk a TutorialID és a TutorialName mezőket néhány alapértelmezett értékre az objektum létrehozásakor.

1. lépés: Az első lépés a konstruktor létrehozása a Tutorial osztályhoz. Ebben a lépésben hozzáadjuk az alábbi kódot a Tutorial.cs fájlhoz.

Kód Magyarázat: -

  1. Először hozzáadunk egy új módszert, amelynek neve megegyezik az osztályéval. Mivel a név ugyanaz, mint az osztály, a C # ezt konstruktor módszerként kezeli. Tehát most, amikor a hívási módszer létrehoz egy ilyen osztályú objektumot, ezt a módszert alapértelmezés szerint meghívják.
  2. A Tutorial konstruktorban a TutorialID értékét 0-ra, a TutorialName értékét pedig "Default" -ra állítjuk. Tehát amikor egy objektum létrehozásra kerül, ezek a mezők mindig megkapják ezeket az alapértelmezett értékeket.

Most váltsunk át a Program.cs fájlra, és csak távolítsuk el a sort, amely a SetTutorial metódust hívja meg. Ennek oka az, hogy csak a kivitelező működését szeretnénk megnézni.

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

Kód Magyarázat: -

  1. Az első lépés egy objektum létrehozása a Tutorial osztály számára. Ez az „új” kulcsszóval történik.
  2. A Tutorial osztály GetTutorial módszerét használjuk a TutorialName megszerzéséhez. Ezután a Console.WriteLine módszerrel megjelenik a konzolon.

Ha a fenti kódot megfelelően adjuk meg, és a program végrehajtásra kerül, a következő kimenet jelenik meg.

Kimenet:

A kimenetből láthatjuk, hogy a konstruktort valóban meghívták, és hogy a TutorialName értékét "Default" -ra állították.

Megjegyzés: Itt az "alapértelmezett" érték lekérésre kerül a konstruktortól.

Összegzés

  • C # Hozzáférés-módosítók vagy Hozzáférés-specifikátorok az osztály tulajdonságának vagy metódusának láthatóságának meghatározására szolgálnak.
  • A konstruktort egy osztály mezőinek inicializálására használják, amikor egy objektum létrejön.
  • A konstruktor egy olyan módszer, amelynek ugyanazok a nevei vannak, mint magának az osztálynak.