Junior
Mis on ulatus (scoped) C#-s?
sobes.tech AI
Vastus AI-lt
C#-s määrab nähtavususe ulatuse, mis määrab muutujate, meetodite ja tüüpide kättesaadavuse programmi osas. See on piirang, kus koodis saab kasutada kindlat identifikaatorit.
Peamised nähtavuse ulatuse valdkonnad:
- Koodiplokk: Sulgudes
{ }deklareeritud muutujad on saadaval ainult selle ploki sees. - Meetodi ulatus: Meetodi sees deklareeritud muutujad ja parameetrid on saadaval ainult selles meetodis.
- Klassi/struktuuri ulatus: Klass või struktuuri liikmed (väljad, omadused, meetodid) on kättesaadavad sõltuvalt juurdepääsmodifikatsioonidest (public, private, protected, internal).
- Nimepaiga ulatus: Nimepaigas deklareeritud tüübid on saadaval selles nimepaigas ja teistes nimepaikades, kus kasutatakse
using. - Kogumi (Assembly) ulatus: Tüübid koos
internalmodifikatoriga on saadaval ainult praeguses kogumis.
Näide koodiploki nähtavuse ulatuse kohta:
public void ExampleMethod()
{
int x = 10; // x on saadaval ainult `ExampleMethod` sees
if (x > 5)
{
int y = 20; // y on saadaval ainult `if` ploki sees
Console.WriteLine(y);
}
// Console.WriteLine(y); // Kompileerimisviga: y ei ole saadaval siin
}