Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

C# - Espaços de nomes


Um namespace é projetado para fornecer uma maneira de manter um conjunto de nomes separado de outro. Os nomes de classe declarados em um namespace não entram em conflito com os mesmos nomes de classe declarados em outro.

Definindo um namespace


Uma definição de namespace começa com a palavra-chave namespace seguido pelo nome do namespace da seguinte forma -
namespace namespace_name {
   // code declarations
}

Para chamar a versão habilitada para namespace de qualquer função ou variável, anexe o nome do namespace da seguinte maneira −
namespace_name.item_name;

O programa a seguir demonstra o uso de namespaces -
Demonstração ao vivo
using System;

namespace first_space {
   class namespace_cl {
      public void func() {
         Console.WriteLine("Inside first_space");
      }
   }
}
namespace second_space {
   class namespace_cl {
      public void func() {
         Console.WriteLine("Inside second_space");
      }
   }
}
class TestClass {
   static void Main(string[] args) {
      first_space.namespace_cl fc = new first_space.namespace_cl();
      second_space.namespace_cl sc = new second_space.namespace_cl();
      fc.func();
      sc.func();
      Console.ReadKey();
   }
}

Quando o código acima é compilado e executado, ele produz o seguinte resultado -
Inside first_space
Inside second_space

O uso Palavra-chave


O usar palavra-chave indica que o programa está usando os nomes no namespace fornecido. Por exemplo, estamos usando o Sistema namespace em nossos programas. A classe Console é definida lá. Acabamos de escrever -
Console.WriteLine ("Hello there");

Poderíamos ter escrito o nome totalmente qualificado como -
System.Console.WriteLine("Hello there");

Você também pode evitar o prefixo de namespaces com o usando diretiva de namespace. Essa diretiva informa ao compilador que o código subsequente está usando nomes no namespace especificado. O namespace é, portanto, implícito para o seguinte código -

Vamos reescrever nosso exemplo anterior, com a diretiva using −
Demonstração ao vivo
using System;
using first_space;
using second_space;

namespace first_space {
   class abc {
      public void func() {
         Console.WriteLine("Inside first_space");
      }
   }
}
namespace second_space {
   class efg {
      public void func() {
         Console.WriteLine("Inside second_space");
      }
   }
}   
class TestClass {
   static void Main(string[] args) {
      abc fc = new abc();
      efg sc = new efg();
      fc.func();
      sc.func();
      Console.ReadKey();
   }
}

Quando o código acima é compilado e executado, ele produz o seguinte resultado -
Inside first_space
Inside second_space

Espaços de nomes aninhados


Você pode definir um namespace dentro de outro namespace da seguinte forma -
namespace namespace_name1 {
   
   // code declarations
   namespace namespace_name2 {
      // code declarations
   }
}

Você pode acessar membros do namespace aninhado usando o operador ponto (.) da seguinte forma −
Demonstração ao vivo
using System;
using first_space;
using first_space.second_space;

namespace first_space {
   class abc {
      public void func() {
         Console.WriteLine("Inside first_space");
      }
   }
   namespace second_space {
      class efg {
         public void func() {
            Console.WriteLine("Inside second_space");
         }
      }
   }   
}
class TestClass {
   static void Main(string[] args) {
      abc fc = new abc();
      efg sc = new efg();
      fc.func();
      sc.func();
      Console.ReadKey();
   }
}

Quando o código acima é compilado e executado, ele produz o seguinte resultado -
Inside first_space
Inside second_space

Linguagem C

  1. C# Hello World - Seu primeiro programa em C#
  2. Palavras-chave e identificadores C#
  3. Variáveis ​​C# e tipos de dados (primitivos)
  4. Operadores C#
  5. Operadores C# Bitwise e Bit Shift
  6. Entrada e saída básica em C#
  7. Expressões, instruções e blocos em C# (com exemplos)
  8. Comentários em C#
  9. Instrução C# switch
  10. C# ternário (? :) Operador