Share via


namespace (Riferimenti per C#)

La parola chiave namespace utilizzata per dichiarare un ambito che contiene un set di oggetti correlati. È possibile utilizzare uno spazio dei nomi per organizzare gli elementi di codice e creare globale tipi univoci.

namespace SampleNamespace
{
    class SampleClass { }

    interface SampleInterface { }

    struct SampleStruct { }

    enum SampleEnum { a, b }

    delegate void SampleDelegate(int i);

    namespace SampleNamespace.Nested
    {
        class SampleClass2 { }
    }
}

Note

Dichiarazione di uno o più tipi tra quelli riportati di seguito, all'interno di uno spazio dei nomi:

Che si dichiari o meno in modo esplicito uno spazio dei nomi in un file di origine C#, il compilatore aggiungerà uno spazio dei nomi predefinito. Tale spazio dei nomi, talvolta indicato come spazio dei nomi globale, è senza nome ed è presente in ogni file. Qualsiasi identificatore nello spazio dei nomi globale può essere utilizzato all'interno di uno spazio dei nomi denominato.

Gli spazi dei nomi dispongono in modo implicito dell'accesso pubblico; tale tipo di accesso non è modificabile. Per informazioni sui modificatori di accesso che è possibile assegnare agli elementi all'interno di uno spazio dei nomi, vedere Modificatori di accesso (Riferimenti per C#).

È possibile definire uno spazio dei nomi in una o più dichiarazioni. Nell'esempio riportato di seguito vengono definite due classi come parte dello spazio dei nomi MyCompany:

namespace MyCompany.Proj1
{
    class MyClass
    {
    }
}

namespace MyCompany.Proj1
{
    class MyClass1
    {
    }
}

Esempio

Nell'esempio riportato di seguito viene illustrato come chiamare un metodo statico in uno spazio dei nomi annidato.

namespace SomeNameSpace
{
    public class MyClass 
    {
        static void Main() 
        {
            Nested.NestedNameSpaceClass.SayHello();
        }
    }

    // a nested namespace 
    namespace Nested   
    {
        public class NestedNameSpaceClass 
        {
            public static void SayHello() 
            {
                Console.WriteLine("Hello");
            }
        }
    }
}
// Output: Hello

Ulteriori informazioni

Per ulteriori informazioni sull'utilizzo degli spazi dei nomi, vedere gli argomenti riportati di seguito:

Specifiche del linguaggio C#

Per altre informazioni, vedere la Specifiche del linguaggio C#. La specifica del linguaggio costituisce il riferimento ufficiale principale per la sintassi e l'uso di C#.

Vedere anche

Riferimenti

Parole chiave di C#

Parole chiave per spazi dei nomi (Riferimenti per C#)

using (Riferimenti per C#)

Concetti

Guida per programmatori C#

Altre risorse

Riferimenti per C#