C # namnområden (med exempel)

I den här handledningen lär vi oss namnspaces, hur man definierar det, får tillgång till dess medlemmar och använder det i ett C # -program.

Namnytor används i C # för att organisera och tillhandahålla en nivå av separering av koder. De kan betraktas som en behållare som består av andra namnområden, klasser etc.

Ett namnområde kan ha följande typer som medlemmar:

  1. Namnområden (Nested Namespace)
  2. Klasser
  3. Gränssnitt
  4. Strukturer
  5. Delegater

Vi kommer att diskutera dessa ämnen i senare handledning. För nu kommer vi att hålla fast vid klasser och namnområden.

Namnytor är inte obligatoriska i ett C # -program, men de spelar en viktig roll för att skriva renare koder och hantera större projekt.

Låt oss förstå begreppet namespace med ett verkligt scenario. Vi har ett stort antal filer och mappar i vår dator. Tänk dig hur svårt det skulle vara att hantera dem om de placeras i en enda katalog. Det är därför vi placerar relaterade filer och mappar i en separat katalog. Detta hjälper oss att hantera våra data ordentligt.

Begreppet namnområde liknar C #. Det hjälper oss att organisera olika medlemmar genom att placera relaterade medlemmar i samma namnområde.

Namespace löser också problemet med namngivningskonflikter . Två eller flera klasser när de placeras i olika namnområden kan ha samma namn.

Definiera namnområde i C #

Vi kan definiera ett namnområde i C # med nyckelordet namnområde som:

 namnområde Namnrymd-namn (// Namnrymds kropp) 

Till exempel:

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

I exemplet ovan MyNamespaceskapas ett namnområde . Den består av en klass MyClasssom medlem. MyMethodär en klassmetod MyClass.

Åtkomst till medlemmar i namnområdet i C #

Medlemmarna i ett namnutrymme kan nås med dot(.)operatören. Syntaxen för åtkomst till medlemmen i namnområdet är,

 Namnrymd-namn. Medlem-namn

Om vi ​​till exempel behöver skapa ett objekt av MyClass kan det göras som,

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

Vi kommer att diskutera om att skapa objekt i senare handledning. För nu bara fokusera på hur klassen MyClassnås.

Exempel 1: Introduktion av namnområde i C # -program

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

När vi kör programmet blir resultatet:

 Skapa mitt namnområde

I ovanstående program har vi skapat vårt eget namnområde MyNamespaceoch fått tillgång till dess medlemmar från Main()metoden inuti MyClass. Som sagt tidigare används dot (.)operatören för att komma åt medlemmen i namnområdet.

I Main()metoden myMethod()kallas metoden med dot (.)operatören.

Använda ett namnområde i C # (med hjälp av nyckelordet)

Ett namnområde kan inkluderas i ett program med hjälp av nyckelordet. Syntaksen är,

 använder namnrymd-namn;

Till exempel,

 använder System;

Fördelen med detta tillvägagångssätt är att vi inte behöver ange det fullständigt kvalificerade namnet på medlemmarna i det namnområdet varje gång vi öppnar det.

En gång raden

 använder System;

ingår högst upp i programmet. Vi kan skriva

 Console.WriteLine ("Hello World!");

Istället för det fullständigt kvalificerade namnet, dvs.

 System.Console.WriteLine ("Hello World!");

Nested Namespace i C #

Ett namnområde kan innehålla ett annat namnområde. Det kallas kapslat namnområde. Det kapslade namnområdet och dess medlemmar kan också nås med dot (.)operatören.

Syntaxen för att skapa kapslat namnområde är som följer:

 namnområde MyNamespace (namespace NestedNamespace (// Body of nested namespace)) 

Exempel 2: Nestat namnområde i 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(); ) ) ) 

När vi kör programmet blir resultatet:

 Nestat namnområde Exempel

Det här exemplet illustrerar hur kapslat namnområde kan implementeras i C #.

Här har vi nu ett extra namnutrymme inuti som MyNamespaceheter Nested. Så istället för att använda MyNamespace.SampleClass.myMethod()måste vi använda MyNamespace.Nested.SampleClass.myMethod().

Intressanta artiklar...