Wprowadzenie do przestrzeni nazw w C #
W języku C # przestrzeń nazw służy do organizowania wielu klas w celu bardzo łatwej obsługi aplikacji. Jest to pomocne w utrzymywaniu zestawu nazw oddzielnie od innych. Nie można konfliktować jednej nazwy klasy zadeklarowanej w jednej przestrzeni nazw z tą samą nazwą klasy zadeklarowanej w innej przestrzeni nazw. Pozwala na systematyczne porządkowanie kodu w systemie hierarchicznym w grupie. System hierarchiczny może służyć do definiowania zagnieżdżonych przestrzeni nazw. Możesz przechowywać kod w zorganizowany sposób, umieszczając kod w różnych przestrzeniach nazw.
Przestrzeń nazw jest obszarem opisowym, w którym identyfikatory (nazwy typów, cechy, zmienne itp.) Mają zasięg. Przestrzenie nazw służą do porządkowania kodu w logiczne grupy i zniechęcania do kolizji nazw, szczególnie gdy w bazie kodu znajdują się różne biblioteki.
W języku c # przestrzeń nazw root jest uważana za globalną przestrzeń nazw. Global :: System definiuje przestrzeń nazw „System” .Net Framework. System.Console może być używany w programach C #. System można zdefiniować jako przestrzeń nazw, a konsolę uważa się za klasę. Domyślnie .NET Framework zapewnia wiele przestrzeni nazw w celu łatwego wdrożenia aplikacji.
Przegląd przestrzeni nazw
Istnieje kilka właściwości przestrzeni nazw wymienionych poniżej:
- Przestrzenie nazw służą do organizowania większych projektów kodu.
- Przestrzenie nazw są rozdzielane za pomocą operatora kropki (.).
- W języku C # pełna nazwa klasy zaczyna się od nazwy Przestrzeni nazw, po której następuje operator kropki i nazwa klasy, która jest nazywana w pełni kwalifikowaną nazwą klasy.
- Dyrektywa „using” eliminuje wymóg określania nazwy przestrzeni nazw dla każdej klasy.
- W jednym obszarze nazw zadeklarowane nazwy klas nie będą powodować konfliktu z tymi samymi nazwami klas zadeklarowanymi w innym obszarze nazw.
- Globalna przestrzeń nazw to główna przestrzeń nazw, a global :: System odnosi się do przestrzeni nazw .NET System.
Dlaczego potrzebujemy przestrzeni nazw w C #?
- Przestrzenie nazw w programie C # pomagają organizować programy. Te przestrzenie nazw pomagają również uniknąć kolizji między klasami nazw w dwóch zestawach kodu.
- Jeśli chcesz ponownie wykorzystać część kodu, dobrym rozwiązaniem jest zaimplementowanie przestrzeni nazw we własnym kodzie. Nazwy plików lub katalogów nie odpowiadają przestrzeniom nazw. Jeśli odpowiadają one Przestrzeniom nazw, możesz to zrobić w celu uporządkowania kodu.
- Przestrzenie nazw odgrywają istotną rolę w pisaniu czystszych kodów i zarządzaniu większymi projektami.
- Głównym celem używania Przestrzeni nazw w języku C # jest zmniejszenie nadmiarowości kodu w aplikacjach .NET. Krótko mówiąc, Przestrzeń nazw to grupa klas, podczas gdy klasy to zbiór obiektów i metod. Możesz łatwo uzyskać dostęp do wszystkich metod klas tylko za pomocą przestrzeni nazw i zaimportowania przestrzeni nazw w aplikacji. Posiadanie przestrzeni nazw umożliwia zarządzanie zakresem i metodami klasy. Jeśli nie ma przestrzeni nazw, nie można użyć wielu klas o tej samej nazwie.
Jak zdefiniować przestrzenie nazw w C #?
Przestrzeń nazw można zdefiniować za pomocą przestrzeni nazw słów kluczowych, a następnie nazwy przestrzeni nazw. Poniższa składnia opisuje sposób definiowania przestrzeni nazw w języku programowania ac #:
namespace namespace_name (
// body of namespace
)
Przykład:
namespace my_program_demo
(
class demo
(
public void myfunction()
(
// your code declarations
)
)
)
W powyższym fragmencie kodu mój_program_demo jest przestrzenią nazw i zawiera demo klasy, ponieważ jego element członkowski, a myfunction () jest metodą klasy demo.
Jak uzyskać dostęp do przestrzeni nazw w C #?
Do klasy przestrzeni nazw można uzyskać dostęp za pomocą słowa kluczowego, które określa, że nazwy są używane przez program w danej przestrzeni nazw. To słowo kluczowe zapewnia dostęp do powiązanych klas i metod używanych w aplikacjach .NET. Słowo kluczowe using pozwala na użycie klasy bez konieczności definiowania przestrzeni nazw.
W c # możesz również uzyskać dostęp do członków Przestrzeni nazw, używając operatora kropki. (nazwa przestrzeni nazw. nazwa_członka)
Przykład:
using System;
namespace Demo (
class DemoExample (
static void Main(string() args) (
Console.WriteLine("Welcome to C# namespace…");
Console.ReadKey();
)
)
)
Kroki do wykonania programu:
- Skompiluj program C # przy użyciu wiersza polecenia zamiast programu Visual Studio IDE, jak pokazano poniżej:
- Otwórz edytor tekstu, dołącz powyższy kod i zapisz plik jako DemoExample.cs
- Otwórz wiersz polecenia i przejdź do katalogu, w którym zapisany jest plik.
- Wpisz csc DemoExample.cs i naciśnij klawisz Enter, aby skompilować kod.
- Przejdź do katalogu, a zobaczysz plik wykonywalny DemoExample.exe.
- Wpisz DemoExample, aby uruchomić program, a dane wyjściowe zostaną wyświetlone na ekranie.
Przykład:
using keyword: Poniższy przykład określa użycie słowa kluczowego.
using System;
using first_demo;
using second_demo;
namespace first_demo (
class myclass (
public void func1() (
Console.WriteLine("Helloworld…..");
)
)
)
namespace second_demo (
class myclass1 (
public void func2() (
Console.WriteLine("Welcome to EDUCBA…..");
)
)
)
class DemoClass (
static void Main(string() args) (
myclass cls = new myclass();
myclass1 cls1 = new myclass1();
cls.func1();
cls1.func2();
Console.ReadKey();
)
)
Skompiluj i uruchom powyższy kod, a otrzymasz wynik, jak pokazano na poniższym obrazku.
Zagnieżdżone przestrzenie nazw: Składnia tworzenia zagnieżdżonej przestrzeni nazw jest następująca
namespace NamespaceDemo
(
namespace NestedNamespace
(
// code for nested namespace
)
)
Poniższy przykład pokazuje użycie zagnieżdżonych przestrzeni nazw: Do członków zagnieżdżonej przestrzeni nazw można uzyskać dostęp za pomocą operatora kropki (.):
using System;
using first_demo;
using first_demo.second_demo;
namespace first_demo (
class myclass (
public void func1() (
Console.WriteLine("Helloworld…..");
)
)
namespace second_demo (
class myclass1 (
public void func2() (
Console.WriteLine("This is example of nested namespace…..");
)
)
)
)
class NestedNamespaceDemo (
static void Main(string() args) (
myclass cls = new myclass();
myclass1 cls1 = new myclass1();
cls.func1();
cls1.func2();
Console.ReadKey();
)
)
Skompiluj i uruchom powyższy kod, a otrzymasz wynik, jak pokazano na poniższym obrazku:
Wniosek
- Korzystając z przestrzeni nazw, programy c # mają strukturę i wykorzystują dyrektywy do promowania korzystania z przestrzeni nazw. Na podstawie tego dokumentu możemy zrozumieć potrzebę i zastosowanie przestrzeni nazw w klasach. Przestrzenie nazw mogą również zawierać inne typy, takie jak ich członkowie, takie jak klasy, interfejsy, struktury, wyliczenia i delegaci.
- Przestrzenie nazw są używane zarówno jako wewnętrzny system organizacyjny programu, jak i zewnętrzny system organizacyjny do prezentacji aspektów programu narażonych na działanie innych programów. Reguluje zakres metod i klas w większych projektach. Programowanie sieciowe. Przestrzenie nazw służą również do rozwiązywania problemu konfliktu nazw.
Polecane artykuły
To jest przewodnik po przestrzeniach nazw w C #. Tutaj omawiamy sposób definiowania przestrzeni nazw w C #, potrzebę przestrzeni nazw w C # z kilkoma przykładami. Możesz także przejrzeć nasze inne sugerowane artykuły -
- Przeciążenie w C #
- Kopiuj konstruktora w C #
- Funkcje C #
- C # do-while loop
- Przeciążanie i zastępowanie w C #
- Typy konstruktorów w C # z implementacją kodu
- Znaczenie, zastosowania i przykłady tego słowa kluczowego