Erişilebilirlik Düzeyleri (C# Başvurusu)Accessibility Levels (C# Reference)

Üyeler için aşağıdaki tanımlanmış erişilebilirlik publicdüzeylerinden birini internalbelirtmek için private,,, veya erişim değiştiricilerini protectedkullanın.Use the access modifiers, public, protected, internal, or private, to specify one of the following declared accessibility levels for members.

Tanımlanan erişilebilirlikDeclared accessibility AçıklamaMeaning
public Erişim kısıtlı değil.Access is not restricted.
protected Erişim, kapsayan sınıftan türetilmiş kapsayan sınıf veya türlerle sınırlıdır.Access is limited to the containing class or types derived from the containing class.
internal Erişim, geçerli derleme ile sınırlıdır.Access is limited to the current assembly.
protected internal Erişim, geçerli derleme veya kapsayan sınıftan türetilmiş türlerle sınırlıdır.Access is limited to the current assembly or types derived from the containing class.
private Erişim, kapsayan tür ile sınırlıdır.Access is limited to the containing type.
private protected Erişim, geçerli derleme içindeki içeren sınıftan türetilmiş kapsayan sınıf veya türlerle sınırlıdır.Access is limited to the containing class or types derived from the containing class within the current assembly. 7,2 sürümünden C# itibaren kullanılabilir.Available since C# 7.2.

protected internal Veyaprivate protected kombinasyonlarını kullandığınızda, bir üye veya tür için yalnızca bir erişim değiştiricisine izin verilir.Only one access modifier is allowed for a member or type, except when you use the protected internal or private protected combinations.

Ad alanlarında erişim değiştiricilerine izin verilmez.Access modifiers are not allowed on namespaces. Ad alanlarının erişim kısıtlamaları yoktur.Namespaces have no access restrictions.

Üye bildiriminin gerçekleştiği içeriğe bağlı olarak, yalnızca belirli olarak tanımlanmış erişilebilirlik izin verilir.Depending on the context in which a member declaration occurs, only certain declared accessibilities are permitted. Üye bildiriminde erişim değiştiricisi belirtilmemişse, varsayılan bir erişilebilirlik kullanılır.If no access modifier is specified in a member declaration, a default accessibility is used.

Diğer türlerde iç içe olmayan en üst düzey türler yalnızca internal veya public erişilebilirliği olabilir.Top-level types, which are not nested in other types, can only have internal or public accessibility. Bu türlerin internalvarsayılan erişilebilirliği.The default accessibility for these types is internal.

Diğer türlerin üyeleri olan iç içe türler, aşağıdaki tabloda gösterildiği gibi, erişilebilir olarak bildirilebilecek.Nested types, which are members of other types, can have declared accessibilities as indicated in the following table.

ÜyeleriMembers of Varsayılan üye erişilebilirliğiDefault member accessibility Üyenin izin verilen erişilebilirliğiAllowed declared accessibility of the member
enum public Yok.None
class private public

protected

internal

private

protected internal

private protected
interface public Yok.None
struct private public

internal

private

İç içe bir türün erişilebilirliği, hem belirtilen üyenin hem de hem de hem de kapsayan türdeki erişilebilirlik etki alanı tarafından belirlenen erişilebilirlik etki alanınabağlıdır.The accessibility of a nested type depends on its accessibility domain, which is determined by both the declared accessibility of the member and the accessibility domain of the immediately containing type. Ancak, iç içe geçmiş bir türün erişilebilirlik etki alanı, kapsayan türden bu türü aşamaz.However, the accessibility domain of a nested type cannot exceed that of the containing type.

C# Dil BelirtimiC# Language Specification

Daha fazla bilgi edinmek için, bkz. C# Dil Belirtimi.For more information, see the C# Language Specification. Dil belirtimi, C# sözdizimi ve kullanımı için kesin bir kaynaktır.The language specification is the definitive source for C# syntax and usage.

Ayrıca bkz.See also