C # nimitilat (esimerkkien kanssa)

Tässä opetusohjelmassa opitaan nimitiloista, kuinka määritellä se, käyttää sen jäseniä ja käyttää sitä C # -ohjelmassa.

Nimitiloja käytetään C #: ssä koodien organisoimiseksi ja tason erottamiseksi. Niitä voidaan pitää säilönä, joka koostuu muista nimitiloista, luokista jne.

Nimitilan jäseninä voi olla seuraavia tyyppejä:

  1. Nimitilat (sisäkkäiset nimitilat)
  2. Luokat
  3. Liitännät
  4. Rakenteet
  5. Edustajat

Keskustelemme näistä aiheista myöhemmissä opetusohjelmissa. Toistaiseksi pidämme kiinni luokista ja nimitiloista.

Nimitilat eivät ole pakollisia C # -ohjelmassa, mutta niillä on tärkeä rooli puhtaampien koodien kirjoittamisessa ja suurempien projektien hallinnassa.

Ymmärretään nimitilan käsite tosielämän skenaariossa. Tietokoneessamme on paljon tiedostoja ja kansioita. Kuvittele, kuinka vaikeaa olisi hallita niitä, jos ne sijoitetaan yhteen hakemistoon. Siksi laitamme liittyvät tiedostot ja kansiot erilliseen hakemistoon. Tämä auttaa meitä hallitsemaan tietoja oikein.

Nimitilan käsite on samanlainen C #: ssä. Se auttaa meitä järjestämään erilaisia ​​jäseniä sijoittamalla toisiinsa liittyvät jäsenet samaan nimitilaan.

Nimitila ratkaisee myös ristiriitojen ongelman . Kaksi tai useampia luokkia, kun ne sijoitetaan eri nimitiloihin, voivat olla sama nimi.

Nimitilan määrittäminen C #: ssä

Voimme määritellä nimitilan C #: ssä käyttämällä nimitilan avainsanaa seuraavasti:

 nimiavaruus Nimiavaruus-Nimi (// Nimiavaruuden runko) 

Esimerkiksi:

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

Yllä olevassa esimerkissä luodaan nimitila MyNamespace. Se koostuu luokasta MyClasssen jäsenenä. MyMethodon luokan menetelmä MyClass.

Nimitilan jäsenten käyttö C #: ssä

Nimitilan jäseniin pääsee dot(.)operaattorin avulla. Syntaksi nimitilan jäsenen käyttämiseen on

 Nimitila-Nimi. Jäsen-Nimi

Esimerkiksi, jos meidän on luotava objekti MyClassista, se voidaan tehdä

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

Keskustelemme objektien luomisesta myöhemmissä opetusohjelmissa. Keskity nyt vain luokkaan MyClasspääsyyn.

Esimerkki 1: Nimitilan esittely C # -ohjelmassa

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

Kun suoritamme ohjelmaa, tulos on:

 Nimitilan luominen

Edellä olevassa ohjelmassa olemme luoneet oman nimiavaruutemme MyNamespaceja päässeet sen jäseniin Main()menetelmän sisällä MyClass. Kuten aiemmin mainittiin, dot (.)operaattoria käytetään pääsemään nimitilan jäseneen.

Tässä Main()menetelmässä, myMethod()menetelmää kutsutaan käyttäen dot (.)operaattori.

Nimitilan käyttäminen C #: ssä (The using Keyword)

Nimitila voidaan sisällyttää ohjelmaan käyttämällä avainsanaa. Syntaksi on,

 käyttämällä Namespace-Name;

Esimerkiksi,

 käyttämällä järjestelmää;

Tämän lähestymistavan etuna on, että meidän ei tarvitse määrittää kyseisen nimitilan jäsenten täydellistä nimeä joka kerta, kun käytämme sitä.

Kun linja

 käyttämällä järjestelmää;

sisältyy ohjelman yläosaan. Voimme kirjoittaa

 Console.WriteLine ("Hei maailma!");

Täysin hyväksytyn nimen sijasta

 System.Console.WriteLine ("Hei maailma!");

Sisäkkäiset nimitilat C #: ssä

Nimitila voi sisältää toisen nimiavaruuden. Sitä kutsutaan sisäkkäisiksi nimiavaruuksiksi. Sisäkkäisiä nimiavaruuksia ja niiden jäseniä voidaan käyttää myös dot (.)operaattorin avulla.

Sisäkkäisten sisätilojen luomisen syntaksi on seuraava:

 nimitila MyNamespace (nimitila SisäkkäisetNamespace (// sisäkkäisten nimiavaruuksien runko)) 

Esimerkki 2: Sisäkkäiset nimitilat C #: ssä

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

Kun suoritamme ohjelmaa, tulos on:

 Sisäkkäinen nimitila-esimerkki

Tämä esimerkki kuvaa, kuinka sisäkkäiset nimitilat voidaan toteuttaa C #: ssä.

Täällä meillä on nyt ylimääräinen nimitila, MyNamespacejota kutsutaan Nested. Joten MyNamespace.SampleClass.myMethod()meidän on käytettävä sen sijaan , että käytämme MyNamespace.Nested.SampleClass.myMethod().

Mielenkiintoisia artikkeleita...