C # vardų erdvės (su pavyzdžiais)

Šioje pamokoje sužinosime apie vardų sritis, kaip ją apibrėžti, pasiekti jos narius ir naudoti C # programoje.

Vardų erdvės naudojamos C # koduoti ir užtikrinti kodų atskyrimo lygį. Jie gali būti laikomi talpykla, kurią sudaro kitos vardų srities, klasės ir kt.

Vardų srities nariai gali būti šie:

  1. Vardų erdvės (įdėtos vardų erdvės)
  2. Užsiėmimai
  3. Sąsajos
  4. Konstrukcijos
  5. Delegatai

Šiomis temomis aptarsime vėlesnėse pamokose. Kol kas laikysimės klasių ir vardų sričių.

Vardų erdvės nėra privalomos C # programoje, tačiau jos vaidina svarbų vaidmenį rašant švaresnius kodus ir valdant didesnius projektus.

Supraskime vardų srities sąvoką pagal realaus gyvenimo scenarijų. Mūsų kompiuteryje yra daug failų ir aplankų. Įsivaizduokite, kaip sunku būtų juos valdyti, jei jie būtų patalpinti į vieną katalogą. Štai kodėl susijusius failus ir aplankus dedame į atskirą katalogą. Tai padeda mums tinkamai tvarkyti savo duomenis.

Vardų srities sąvoka C # yra panaši. Tai padeda mums organizuoti skirtingus narius, susidedant susijusius narius į tą pačią vardų sritį.

Vardų erdvė taip pat sprendžia konfliktų įvardijimo problemą . Dvi ar daugiau klasių, priskiriamos skirtingoms vardų sritims, gali turėti tą patį pavadinimą.

Vardų srities apibrėžimas C #

Mes galime apibrėžti vardų sritį C #, naudodami vardų srities raktinį žodį kaip:

 vardų sritis Vardų srities pavadinimas (// vardų srities turinys) 

Pavyzdžiui:

 namespace MyNamespace ( class MyClass ( public void MyMethod() ( System.Console.WriteLine("Creating my namespace"); ) ) ) 

Ankstesniame pavyzdyje sukurta vardų sritis MyNamespace. Ją sudaro klasė MyClasskaip jos narė. MyMethodyra klasės metodas MyClass.

Prieiga prie vardų erdvės narių C #

Vardų srities narius galima pasiekti naudojant dot(.)operatorių. Sintaksė, norint pasiekti vardų srities narį, yra

 Vardų srities vardas. Nario vardas

Pvz., Jei mums reikia sukurti „MyClass“ objektą, tai galima padaryti kaip

 MyNamespace.MyClass myClass = new MyNamespace.MyClass ();

Apie objektų kūrimą aptarsime vėlesnėse pamokose. Kol kas sutelkite dėmesį į tai, kaip pasiekiama klasė MyClass.

1 pavyzdys: Vardų erdvės pristatymas C # programoje

 using System; namespace MyNamespace ( public class SampleClass ( public static void myMethod() ( Console.WriteLine("Creating my namespace"); ) ) ) namespace MyProgram ( public class MyClass ( public static void Main() ( MyNamespace.SampleClass.myMethod(); ) ) ) 

Kai vykdysime programą, išvestis bus:

 Kuriu savo vardų sritį

Pirmiau pateiktoje programoje mes sukūrėme savo vardų sritį MyNamespaceir pasiekėme jos narius iš Main()metodo viduje MyClass. Kaip minėta anksčiau, dot (.)operatorius naudojamas norint pasiekti vardų srities narį.

Į Main()metodą, myMethod()metodas vadinamas naudojant dot (.)operatorių.

Vardų srities naudojimas C # (The using Keyword)

Vardų sritis gali būti įtraukta į programą naudojant raktinį žodį. Sintaksė yra

 naudojant vardų srities pavadinimą;

Pavyzdžiui,

 naudojant sistemą;

Šio metodo pranašumas yra tas, kad kiekvieną kartą, kai prie jo prisijungiame, nereikia nurodyti visiškai kvalifikuoto tos vardų srities narių vardų.

Kai eilutė

 naudojant sistemą;

yra įtraukta į programos viršų. Mes galime rašyti

 „Console.WriteLine“ („Labas pasaulis!“);

Vietoj visiškai kvalifikuoto pavadinimo, t

 „System.Console.WriteLine“ („Sveikas pasaulis!“);

Įdėtoji vardų sritis C #

Vardų srityje gali būti kita vardų sritis. Tai vadinama įdėta vardų erdve. Į įdėtą vardų sritį ir jos narius taip pat galima patekti naudojant dot (.)operatorių.

Įterptųjų vardų srities sintaksė yra tokia:

 vardų sritis Mano vardų sritis (vardų sritis „NestedNamespace“ (// įterptųjų vardų srities turinys)) 

2 pavyzdys: įdėtos vardų erdvės C #

 using System; // Nested Namespace namespace MyNamespace ( namespace Nested ( public class SampleClass ( public static void myMethod() ( Console.WriteLine("Nested Namespace Example"); ) ) ) ) namespace MyProgram ( public class MyClass ( public static void Main() ( MyNamespace.Nested.SampleClass.myMethod(); ) ) ) 

Kai vykdysime programą, išvestis bus:

 Įterptųjų vardų srities pavyzdys

Šis pavyzdys parodo, kaip įdėtą vardų sritį galima įdiegti C #.

Čia mes turime papildomą pavadinimų erdvę, MyNamespacevadinamą Nested. Taigi, užuot naudoję MyNamespace.SampleClass.myMethod(), turime naudoti MyNamespace.Nested.SampleClass.myMethod().

Įdomios straipsniai...