다음을 통해 공유


AttributeUsageAttribute 클래스

다른 특성 클래스의 용도를 지정합니다. 이 클래스는 상속될 수 없습니다.

네임스페이스: System
어셈블리: mscorlib(mscorlib.dll)

구문

‘선언
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
<AttributeUsageAttribute(AttributeTargets.Class, Inherited:=True)> _
Public NotInheritable Class AttributeUsageAttribute
    Inherits Attribute
‘사용 방법
Dim instance As AttributeUsageAttribute
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets.Class, Inherited=true)] 
public sealed class AttributeUsageAttribute : Attribute
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets::Class, Inherited=true)] 
public ref class AttributeUsageAttribute sealed : public Attribute
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute AttributeUsageAttribute(AttributeTargets.Class, Inherited=true) */ 
public final class AttributeUsageAttribute extends Attribute
SerializableAttribute 
ComVisibleAttribute(true) 
AttributeUsageAttribute(AttributeTargets.Class, Inherited=true) 
public final class AttributeUsageAttribute extends Attribute

설명

사용자 고유의 특성 클래스를 정의할 때에는 특성 클래스에 AttributeUsageAttribute를 포함함으로써 해당 특성 클래스가 사용되는 방식을 제어할 수 있습니다. 표시된 특성 클래스는 Attribute에서 직접 또는 간접적으로 파생되어야 합니다.

특성 클래스에는 positional 및 named 매개 변수가 있습니다. 특성 클래스의 public 생성자는 각각 해당 클래스에 대한 위치 매개 변수의 올바른 순서를 정의합니다. Named 매개 변수는 해당 특성 클래스의 비정적 필드, 공용 필드 및 읽기/쓰기 필드 또는 속성에 의해 정의됩니다.

다음 매개 변수를 정의하면 AttributeUsageAttribute의 세 가지 속성이 설정됩니다.

이 positional 매개 변수는 표시된 해당 특성이 놓일 수 있는 프로그램 요소를 지정합니다. 특성을 놓을 수 있는 모든 요소 집합은 AttributeTargets 열거자에 나열됩니다. 비트 OR 연산을 사용하여 여러 개의 AttributeTargets 값을 조합하면 유효한 프로그램 요소의 원하는 조합을 가져올 수 있습니다.

이 named 매개 변수는 표시된 특성이 특정 프로그램 요소에 한 번 이상 지정될 수 있는지 여부를 지정합니다.

이 named 매개 변수는 파생된 클래스 및 재정의하는 멤버에 표시된 특성이 상속될 수 있는지 여부를 지정합니다.

특성 사용에 대한 자세한 내용은 Attribute특성을 사용하여 메타데이터 확장을 참조하십시오.

상속 계층 구조

System.Object
   System.Attribute
    System.AttributeUsageAttribute

스레드로부터의 안전성

이 형식의 모든 public static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.

플랫폼

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

2.0, 1.1, 1.0에서 지원

.NET Compact Framework

2.0, 1.0에서 지원

참고 항목

참조

AttributeUsageAttribute 멤버
System 네임스페이스
Attribute 클래스
AttributeTargets 열거형

기타 리소스

특성을 사용하여 메타데이터 확장