Namespace Deyimi

Bir ad alanının adını bildirer ve bildirimi izleyen kaynak kodun bu ad alanı içinde derlenmiş olmasına neden olur.

Syntax

Namespace [Global.] { name | name.name }
    [ componenttypes ]
End Namespace

Bölümler

Genel İsteğe Bağlı. Projenizin kök ad alanının dışında bir ad alanı tanımlamanıza olanak sağlar. Bkz. Visual Basic..

name Gerekli. Ad alanını tanımlayan benzersiz bir ad. Geçerli bir Visual Basic olmalıdır. Daha fazla bilgi için bkz. Bildirilen Öğe Adları.

componenttypes Isteğe bağlı. Ad alanını neden olan öğeler. Bunlar arasında numaralar, yapılar, arabirimler, sınıflar, modüller, temsilciler ve diğer ad alanları bulunur ancak bunlarla sınırlı değildir.

End Namespace Bir bloğu Namespace sonlandırılır.

Açıklamalar

Ad alanları bir kuruluş sistemi olarak kullanılır. Diğer programlara ve uygulamalara açık programlama öğelerini sınıflandırmak ve sunmak için bir yol sağlar. Ad alanının bir sınıf veya yapı olduğu gibi bir tür olmadığını unutmayın; bir programlama öğesini ad alanının veri türüne sahip olacak şekilde bildiramazsınız.

Deyiminden sonra bildirilen tüm programlama Namespace öğeleri bu ad alanına aittir. Visual Basic, bir deyim veya başka bir deyimle karşılaşana kadar öğeleri bildirilen son ad End Namespace alanına derlemeye devam Namespace eder.

Bir ad alanı zaten tanımlanmışsa, projenizin dışında bile buna programlama öğeleri eklersiniz. Bunu yapmak için, öğeleri bu ad Namespace alanına derlemek üzere Visual Basic için deyimini kullanırsınız.

Deyimi yalnızca dosya Namespace veya ad alanı düzeyinde kullanabilirsiniz. Bu, bir ad alanı için bildirim bağlamının bir kaynak dosya veya başka bir ad alanı olması ve bir sınıf, yapı, modül, arabirim veya yordam olamaz olması anlamına gelir. Daha fazla bilgi için bkz. Bildirim Bağlamları ve Varsayılan Erişim Düzeyleri.

Bir ad alanını başka bir ad alanı içinde bildirebilirsiniz. Bildirebilirsiniz iç içe yerleştirme düzeyleri için katı bir sınır yoktur, ancak diğer kodun en içteki ad alanı içinde bildirilen öğelere eriştiklerinde iç içe hiyerarşideki tüm ad alanı adlarını içeren bir nitelik dizesi kullanması gerektiğini unutmayın.

Erişim düzeyi

Ad alanları erişim düzeyine sahip gibi Public kabul edilir. Bir ad alanına aynı projenin herhangi bir yerindeki koddan, projeye başvurulan diğer projelerden ve projeden yerleşik herhangi bir derlemeden erişilebilir.

Ad alanı düzeyinde bildirilen ancak başka bir öğenin içinde yer alan programlama öğelerine sahip olabilir veya Public Friend erişebilirsiniz. Belirtilmezse, böyle bir öğenin erişim düzeyi varsayılan Friend olarak kullanır. Ad alanı düzeyinde bildirebilirsiniz öğeler sınıflar, yapılar, modüller, arabirimler, numaralar ve temsilciler içerir. Daha fazla bilgi için bkz. Bildirim Bağlamları ve Varsayılan Erişim Düzeyleri.

Kök Ad Alanı

Projenizin tüm ad alanı adları bir kök ad alanını temel alıyor. Visual Studio projenizin adını projenizin tüm kodu için varsayılan kök ad alanı olarak atar. Örneğin, projeniz olarak Payroll adlandırılmışsa, programlama öğeleri ad alanına Payroll aittir. Namespace fundingbildirersanız, bu ad alanının tam adı Payroll.funding olacaktır.

Genel liste sınıfı örneğinde olduğu gibi bir deyimde var olan bir ad alanını belirtmek için kök ad alanınızı Namespace null değere ayarlayın. Bunu yapmak için, Project menüsünden Özellikler'Project'e tıklayın ve ardından Kök ad alanı girişini temizleyin, böylece kutu boş olur. Bunu genel liste sınıfı örneğinde yapmadıysanız, Visual Basic derleyici projesinde tam adıyla yeni bir ad System.Collections.Generic Payroll alanı olarak Payroll.System.Collections.Generic alır.

Alternatif olarak, projenizin dışında Global tanımlanan ad alanlarının öğelerine başvurmak için anahtar sözcüğünü kullanabilirsiniz. Bunu yapmak, projenizin adını kök ad alanı olarak tutmanıza olanak sağlar. Bu, programlama öğelerinizi mevcut ad alanlarının öğeleriyle birlikte, insorarak birleştirme şansını azaltır. Daha fazla bilgi için, Visual Basic ad alanlarındaki "Tam Adlarda Genel Anahtar Sözcük" bölümüne Visual Basic.

anahtar Global sözcüğü bir Namespace deyiminde de kullanılabilir. Bu, projenizin kök ad alanının dışında bir ad alanı tanımlamanızı sağlar. Daha fazla bilgi için, Visual Basic'daki Ad Alanları'nın "Ad Alanı Deyimleri'ne Genel Anahtar Visual Basic.

Sorun giderme. Kök ad alanı, ad alanı adlarının beklenmedik şekilde bir şekilde birletir. Projenizin dışında tanımlanan ad alanlarına başvurursanız, Visual Basic derleyici bunları kök ad alanı içinde iç içe ad alanları olarak construe olabilir. Böyle bir durumda, derleyici dış ad alanlarında zaten tanımlanmış olan türleri tanımaz. Bunu önlemek için kök ad alanınızı "Kök Ad Alanı" içinde açıklandığı gibi null değere ayarlayın veya dış ad alanlarının öğelerine erişmek için anahtar Global sözcüğünü kullanın.

Öznitelikler ve Değiştiriciler

Bir ad alanına öznitelik uygulayamazsınız. Öznitelik, derlemenin meta verilerine bilgi katarak ad alanları gibi kaynak sınıflandırıcılar için anlamlı değildir.

Ad alanına herhangi bir erişim veya yordam değiştiricisi ya da başka bir değiştirici uygulayamazsınız. Bir tür olduğundan, bu değiştiriciler anlamlı değildir.

Örnek 1

Aşağıdaki örnek, biri diğeri iç içe geçmiş iki ad alanı bildirer.

Namespace n1
    Namespace n2
        Class a
            ' Insert class definition.
        End Class
    End Namespace
End Namespace

Örnek 2

Aşağıdaki örnek, tek bir satırda birden çok iç içe ad alanı bildirmektedir ve önceki örnekle eşdeğerdir.

Namespace n1.n2
    Class a
        ' Insert class definition.
    End Class
End Namespace

Örnek 3

Aşağıdaki örnek, önceki örneklerde tanımlanan sınıfına erişer.

Dim instance As New n1.n2.a

Örnek 4

Aşağıdaki örnek, yeni bir genel liste sınıfının iskeletini tanımlar ve ad alanına System.Collections.Generic ekler.

Namespace System.Collections.Generic
    Class specialSortedList(Of T)
        Inherits List(Of T)
        ' Insert code to define the special generic list class.
    End Class
End Namespace

Ayrıca bkz.