Käytä muunnoksia (määrityksiä) C#:ssa ohjelmaesimerkein
⚡ Älykäs yhteenveto
C#:n käyttöoikeusmodifioijat ovat avainsanoja, jotka asettavat luokan, ominaisuuden tai metodin näkyvyyden ja rajoittavat sitä, mitkä ulkoiset ohjelmat voivat käyttää niitä. Konstruktorit alustavat kenttien arvot automaattisesti aina, kun luokan objekti luodaan.
Mikä on Access Modifier (Specifier) C#:ssa?
Pääsyn muokkaajat C#:n käyttöoikeusmäärittelijät eli Access Specifiers ovat avainsanoja, joita käytetään luokan ominaisuuden tai metodin näkyvyyden määrittämiseen. Niitä käytetään, kun et halua muiden ohjelmien näkevän luokan ominaisuuksia tai metodeja. Käyttöoikeusmäärittelijät rajoittavat pääsyä niin, että muut ohjelmat eivät voi nähdä luokan ominaisuuksia tai metodeja.
C#:ssa on 6 tyyppiä pääsyn muokkaajia:
- yksityinen
- julkinen
- Suojattu
- Sisäinen
- Suojattu sisäinen
- Yksityinen suojattu
Opimme tärkeimmistä pääsymäärityksistä C#:ssa alla selitetyillä ohjelmaesimerkeillä.
Yksityisen pääsyn muokkaajat C#:ssa
Kun Yksityinen käyttöoikeus on liitetty joko ominaisuuteen tai menetelmään, se tarkoittaa, että näitä jäseniä ei voida käyttää mistään ulkoisesta ohjelmasta.
Esimerkki Private Access Modifierista
Otetaan esimerkki ja katsotaan, mitä tapahtuu, kun käytämme yksityisen pääsyn muokkausta.
Muokataan nykyistä koodia Tutorial.cs-tiedostossamme. Muutetaan SetTutorial-menetelmässä julkinen avainsana yksityiseksi.
Siirrytään nyt Program.cs-tiedostoomme. Huomaat, että SetTutorial-menetelmän alla on punainen kiemurteleva viiva.
Koska olemme nyt ilmoittaneet SetTutorial-menetelmän yksityiseksi Tutorial-luokassamme, Visual Studio on havainnut tämän. Se on kertonut käyttäjälle korostamalla, että nyt tämä menetelmä ei toimi Program.cs-tiedostosta.
C# Public Access Modifiers
Kun Julkinen käyttöoikeus on liitetty joko ominaisuuteen tai menetelmään, se tarkoittaa, että näitä jäseniä voidaan käyttää mistä tahansa ulkoisesta ohjelmasta. Olemme nähneet tämän jo aikaisemmissa esimerkeissämme.
Esimerkki Public Access Modifierista
Koska olemme määrittäneet menetelmämme julkisiksi Tutorial-luokassa, niitä voi käyttää Program.cs-tiedostosta.
Suojatun pääsyn muokkaajat C#:ssa
Kun suojatun pääsyn muokkaus on liitetty joko ominaisuuteen tai menetelmään, se tarkoittaa, että vain näitä jäseniä voi käyttää luokat peritty nykyisestä luokka. Tämä selitetään tarkemmin Perintöluokassa.
C# sisäisen pääsyn muokkaajat
Kun sisäinen käyttöoikeusmuuttaja on liitetty joko ominaisuuteen tai menetelmään, näitä jäseniä voi käyttää vain sisäinen ohjelma, mutta ei ulkoinen ohjelma.
C#-konstruktori
C# Konstruktoreita käytetään alustamaan luokkakenttien arvot, kun niitä vastaavat objektit luodaan. Konstruktori on menetelmä, jolla on sama nimi kuin luokalla. Jos konstruktori on määritelty luokassa, se tarjoaa ensimmäisen menetelmän, jota kutsutaan, kun objekti luodaan. Oletetaan, että meillä olisi luokka nimeltä Työntekijä. Konstruktorimenetelmän nimi olisi myös Työntekijä().
Seuraavat keskeiset asiat on huomioitava konstruktorimenetelmistä
- Rakentajan C#-oletuskäyttöoikeusmuutos on tehtävä julkiseksi.
- Konstruktorimenetelmällä ei pitäisi olla palautustyyppiä.
Esimerkki C#-konstruktorista
Katsotaan nyt, kuinka voimme sisällyttää rakentajien käyttäjän koodiimme. Käytämme rakentajia alustamaan TutorialID- ja TutorialName-kentät joihinkin oletusarvoihin, kun objekti luodaan.
Vaihe 1) Ensimmäinen askel on rakentaa Tutorial-luokkaamme. Tässä vaiheessa lisäämme alla olevan koodin Tutorial.cs-tiedostoon.
Code Selitys:-
- Lisäämme ensin uuden menetelmän, jolla on sama nimi kuin luokalla. Koska se on sama nimi kuin luokka, C# käsittelee sitä konstruktorimenetelmänä. Joten nyt aina kun kutsuva menetelmä luo tämän luokan objektin, tätä menetelmää kutsutaan oletusarvoisesti.
- Tutorial-konstruktorissa asetamme TutorialID:n arvoksi 0 ja TutorialNamen arvoksi "Default". Joten aina kun objekti luodaan, näillä kentillä on aina nämä oletusarvot.
Siirrytään nyt Program.cs-tiedostoomme ja poistetaan vain rivi, joka kutsuu SetTutorial-menetelmää. Tämä johtuu siitä, että haluamme vain nähdä kuinka rakentaja toimii.
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(); } } }
Code Selitys:-
- Ensimmäinen vaihe on objektin luominen Tutorial-luokkaan. Tämä tehdään "uusi"-avainsanalla.
- Käytämme Tutorial-luokan GetTutorial-menetelmää saadaksemme TutorialNamen. Tämä näytetään sitten konsolissa Console.WriteLine-menetelmän kautta.
Jos yllä oleva koodi on syötetty oikein ja ohjelma suoritetaan, seuraava tulos näytetään.
lähtö:
Tulosteesta voimme nähdä, että rakentajaa todellakin kutsuttiin ja että TutorialName-arvon arvoksi asetettiin "Oletus".
Huomautus: Tässä arvo "oletus" haetaan rakentajalta.







