액세스 한정자를 publicprotectedinternal사용하거나 private 멤버에 대해 선언된 다음 접근성 수준 중 하나를 지정합니다.
| 선언된 접근성 | 의미 |
|---|---|
public |
액세스는 제한되지 않습니다. |
protected |
액세스는 포함하는 클래스 또는 포함하는 클래스에서 파생된 형식으로 제한됩니다. |
internal |
액세스는 현재 어셈블리로 제한됩니다. |
protected internal |
액세스는 현재 어셈블리 또는 포함하는 클래스에서 파생된 형식으로 제한됩니다. |
private |
액세스는 포함하는 형식으로 제한됩니다. |
private protected |
액세스는 현재 어셈블리 내의 포함하는 클래스에서 파생된 포함하는 클래스 또는 형식으로 제한됩니다. |
최상위(중첩되지 않은) 형식은 파일 한정자를 사용할 수 있습니다. 한 file 정자는 동일한 소스 파일의 코드에 대한 액세스를 제한합니다. 한정자를 액세스 한정자와 결합 file 할 수 없습니다.
멤버 또는 형식에 대해 하나만 액세스 한정자를 사용합니다 protected internal ( 사용 시 또는 private protected 조합을 사용하는 경우 제외).
네임스페이스에서 액세스 한정자를 사용하지 마세요. 네임스페이스에는 액세스 제한이 없습니다.
멤버 선언이 발생하는 컨텍스트에 따라 특정 선언된 액세스 권한만 허용됩니다. 멤버 선언에서 액세스 한정자를 지정하지 않으면 기본 접근성이 사용됩니다.
다른 형식에 중첩되지 않은 최상위 형식은 접근성만 가질 internalpublic 수 있습니다. 이러한 형식의 기본 접근성은 .입니다 internal.
다른 형식의 멤버인 중첩 형식은 다음 표에 표시된 대로 선언된 액세스 권한을 가질 수 있습니다.
| 의 멤버 | 기본 멤버 접근성 | 멤버의 허용된 선언된 접근성 |
|---|---|---|
enum |
public |
없음 |
class |
private |
publicprotectedinternalprivateprotected internal private protected |
interface |
public |
publicprotectedinternalprivate*protected internal private protected |
struct |
private |
publicinternalprivate |
* 접근성이 interface 있는 private 멤버에는 기본 구현이 있어야 합니다.
비고
키워드 한정자를 사용하여 클래스 또는 구조체를 record 수정하는 경우 동일한 액세스 한정자를 사용합니다.
또한 한정자를 사용하면 record 클래스와 구조체 모두에 대한 기본 멤버 접근성이 계속 private 제공됩니다.
중첩된 형식의 접근성은 멤버의 선언된 접근성과 즉시 포함된 형식의 접근성 도메인이 결정하는 접근성 도메인에 따라 달라집니다. 그러나 중첩된 형식의 접근성 도메인은 포함하는 형식의 액세스 가능성 도메인을 초과할 수 없습니다.
C# 언어 사양
자세한 내용은 C# 언어 사양을 참조하세요. 언어 사양은 C# 구문 및 사용의 최종 소스입니다.
참고하십시오
.NET