Documentos de Académico
Documentos de Profesional
Documentos de Cultura
clases perfectamente organizadas, tanto las que proporciona el .NET Framework como las que
podamos escribir nosotros. Podemos verlo verdaderamente claro con echar un simple vistazo
al explorador de objetos de Visual Studio.NET
Las ventajas principales de estos espacios de nombres son su fuerte estructuración y, sobre
todo, la posibilidad de usar varias clases distintas con el mismo nombre en un mismo programa
si los espacios de nombres son diferentes.
Los espacios de nombres organizan los objetos definidos en un ensamblado. Los ensamblados
pueden contener varios espacios de nombres, que a su vez pueden contener otros espacios de
nombres. Los espacios de nombres evitan las ambigüedades y simplifican las referencias
cuando se usan grupos de objetos grandes, como las bibliotecas de clases.
Namespace MyNamespace
Class [MyClass]
Debe asegurase también que los nombres de los namespace sean diferentes, de esta manera
eliminaremos toda ambigüedad.
Namespace Autos1
Public Class Mustang
'....
'....
End Class
Public Class VW_Escarabajo
'....
'....
End Class
End Namespace
Namespace Autos2
Public Class Mustang
'....
'....
End Class
Public Class VW_Escarabajo
'....
'....
End Class
End Namespace
Este ejemplo define dos namespaces, Autos1 y Autos2, cada uno contiene dos nombres.
Para referirse a la clase VW_Escarabajo de una namespace particular, debe usarse nombres
namespace-calificados.También es posible que usted esté usando un namespace particular en
una parte del código fuente dado para la conveniencia. Esto hace al namespace especificado
un namespaces predefinido esencialmente para el archivo de la fuente. Entonces no hay
ningún requisito adicional para calificar a los miembros del namespace particular, es decir no
será necesario especificarlo totalmente haciendo uso del identificador del namespace, a
menos que claro se exija para evitar la ambigüedad. A continuación un ejemplo:
Imports Autos1
'...
'...
Sub Main()
Dim ObjAuto1 As Mustang = New Mustang
'...
End Sub
En el siguiente ejemplo, un módulo de código llamado Cliente tiene
un Mainmétodo de punto de entrada que hace referencia a un método en
el módulo Stringer.dll creado en el paso 1.
C#Copiar
using System;
using myStringer;
class MainClientApp
{
// Static method Main is the entry point method.
public static void Main()
{
Stringer myStringInstance = new Stringer();
Console.WriteLine("Client code executes");
myStringInstance.StringerMethod();
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using TypeEquivalenceInterface;
using System.Reflection;
namespace TypeEquivalenceClient
class Program
ISampleInterface sampleClass =
(ISampleInterface)sampleAssembly.CreateInstance("TypeEquivalenceRuntime.SampleClass");
sampleClass.GetUserInput();
Console.WriteLine(sampleClass.UserInput);
Console.WriteLine(sampleAssembly.GetName().Version.ToString());
Console.ReadLine();