C # pääsymodifikaattorit (määrittelijät) ohjelman esimerkillä

Sisällysluettelo:

Anonim

Tässä opetusohjelmassa opit-

  • Pääsyn muokkaajat
  • Rakentaja

Pääsyn muokkaajat

C # -käyttöoikeuksien muokkaajat tai pääsyn määrittelijät ovat avainsanoja, joilla määritetään luokan ominaisuuden tai menetelmän näkyvyys. Sitä käytetään, kun et halua muiden ohjelmien näkevän luokan ominaisuuksia tai menetelmiä. Pääsyn muokkaajat rajoittavat pääsyä siten, että muut ohjelmat eivät näe luokan ominaisuuksia tai menetelmiä.

C #: ssä on 3 tyyppistä pääsynmuokkainta. Opimme pääsymodifikaattorit C #: ssä alla esitetyn ohjelman esimerkin avulla.

Yksityisen pääsyn muokkaajat

Kun tämä C #: n käyttöoikeuksien määritys on liitetty joko ominaisuuteen tai menetelmään, se tarkoittaa, että näitä jäseniä ei voida käyttää mistään ulkoisesta ohjelmasta.

Otetaan esimerkki ja katsotaan, mitä tapahtuu, kun käytämme yksityisen pääsyn modifikaattoria.

Muutetaan nykyinen koodi Tutorial.cs-tiedostossamme. Vaihdetaan SetTutorial-menetelmässä julkinen avainsana yksityiseksi.

Siirrytään nyt Program.cs-tiedostoon. Huomaat, että SetTutorial-menetelmän alla on punainen squiggly-viiva.

Koska olemme nyt julistaneet SetTutorial-menetelmän yksityiseksi opetusryhmässämme, 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.

Julkisen pääsyn muokkaajat

Kun tämä pääsymuuttuja C #: ssä 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.

Koska olemme määrittäneet menetelmämme julkisiksi opetusohjelmassa, niihin pääsee käsiksi Program.cs-tiedostosta.

Suojatut pääsynmuokkaajat

Kun tämä pääsymuuttuja on liitetty joko ominaisuuteen tai menetelmään, se tarkoittaa, että näitä jäseniä voi käyttää vain nykyisestä luokasta perityt luokat. Tämä selitetään tarkemmin Perintö-luokassa.

C # Rakentaja

Rakentajia käytetään alustamaan luokkakenttien arvot, kun niitä vastaavat objektit luodaan. Konstruktori on menetelmä, jolla on sama nimi kuin luokassa. Jos konstruktori on määritelty luokassa, se tarjoaa ensimmäisen menetelmän, jota kutsutaan objektia luodessa. Oletetaan, että jos meillä olisi luokka nimeltä Työntekijä. Konstruktorimenetelmä nimetään myös nimellä Employee ().

Seuraavat avaintekijät on huomioitava konstruktorimenetelmissä

  1. Rakentajan oletusarvoinen C # -muokkaus on tehtävä julkiseksi.
  2. Konstruktorimenetelmälle ei saisi olla palautustyyppiä.

Katsotaan nyt, kuinka voimme sisällyttää rakentajien käyttäjän koodissamme. Alustamme TutorialID- ja TutorialName-kentät joihinkin oletusarvoihin rakentajien avulla, kun objekti luodaan.

Vaihe 1) Ensimmäinen askel on luoda konstruktori oppitunnillemme. Tässä vaiheessa lisätään alla oleva koodi Tutorial.cs-tiedostoon.

Koodin selitys: -

  1. Lisätään ensin uusi menetelmä, jolla on sama nimi kuin luokassa. Koska se on sama nimi kuin luokka, C # kohtelee tätä konstruktorimenetelmänä. Joten nyt aina, kun kutsumenetelmä luo tämän luokan objektin, tätä menetelmää kutsutaan oletuksena.
  2. Tutorial-konstruktorissa asetamme TutorialID-arvoksi 0 ja TutorialName-asetukseksi "Default". Joten aina kun objekti luodaan, näillä kentillä on aina nämä oletusarvot.

Siirrytään nyt Program.cs-tiedostoon 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();}}}

Koodin selitys: -

  1. Ensimmäinen vaihe on luoda objekti opetusryhmälle. Tämä tapahtuu uuden avainsanan avulla.
  2. Käytämme Tutorial-luokan GetTutorial-menetelmää saadaksesi TutorialName. Tämä näytetään sitten konsolille Console.WriteLine-menetelmän avulla.

Jos yllä oleva koodi syötetään oikein ja ohjelma suoritetaan, seuraava tulos näkyy.

Tuotos:

Lähdöstä voidaan nähdä, että konstruktori on todellakin kutsuttu ja että TutorialName-arvoksi on asetettu "Default".

Huomaa: Tässä arvo "oletus" haetaan rakentajalta.

Yhteenveto

  • C # Access Modifiers tai Access Specifiers käytetään määrittämään luokan ominaisuuden tai menetelmän näkyvyys.
  • Rakentajaa käytetään alustamaan luokan kentät aina, kun objekti luodaan.
  • Konstruktori on menetelmä, jolla on samat nimet kuin itse luokka.