AttributeTargets 列挙体とは? わかりやすく解説

AttributeTargets 列挙体

属性適用できるアプリケーション要素指定します

この列挙体には、メンバ値のビットごとの組み合わせ可能にする FlagsAttribute 属性含まれています。

名前空間: System
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<SerializableAttribute> _
<ComVisibleAttribute(True)> _
<FlagsAttribute> _
Public Enumeration AttributeTargets
Dim instance As AttributeTargets
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
[FlagsAttribute] 
public enum AttributeTargets
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
[FlagsAttribute] 
public enum class AttributeTargets
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute FlagsAttribute() */ 
public enum AttributeTargets
SerializableAttribute 
ComVisibleAttribute(true) 
FlagsAttribute 
public enum AttributeTargets
メンバメンバ
解説解説

AttributeTargets は、属性適用できる要素種類指定するために AttributeUsageAttribute のパラメータとして使用されます。

AttributeTargets 列挙値にビットごとの OR 演算組み合わせて属性適切な組み合わせ取得できます

使用例使用例

AttributeTargets 列挙体のアプリケーションについては、次のコード例参照してください

Imports System

Module DemoModule
    ' This attribute is only valid on a class.
    <AttributeUsage(AttributeTargets.Class)> _
    Public Class ClassTargetAttribute
        Inherits Attribute
    End Class

    ' This attribute is only valid on a method.
    <AttributeUsage(AttributeTargets.Method)> _
    Public Class MethodTargetAttribute
        Inherits Attribute
    End Class

    ' This attribute is only valid on a constructor.
    <AttributeUsage(AttributeTargets.Constructor)> _
    Public Class ConstructorTargetAttribute
 
        Inherits Attribute
    End Class

    ' This attribute is only valid on a field.
    <AttributeUsage(AttributeTargets.Field)> _
    Public Class FieldTargetAttribute 
        Inherits Attribute
    End Class

    ' This attribute is valid on a class or a method.
    <AttributeUsage(AttributeTargets.Class Or AttributeTargets.Method)>
 _
    Public Class ClassMethodTargetAttribute
 
        Inherits Attribute
    End Class

    ' This attribute is valid on any target.
    <AttributeUsage(AttributeTargets.All)> _
    Public Class AllTargetsAttribute 
        Inherits Attribute
    End Class

    <ClassTarget, _
    ClassMethodTarget, _
    AllTargets> _
    Public Class TestClassAttribute
        <ConstructorTarget, _
        AllTargets> _
        Public Sub New
        End Sub

        <MethodTarget, _
        ClassMethodTarget, _
        AllTargets> _
        Public Sub Method1()
        End Sub

        <FieldTarget, _
        AllTargets> _
        Public myInt as Integer
    End Class

    Sub Main()
    End Sub
End Module
using System;

namespace AttTargsCS {
    // This attribute is only valid on a class.
    [AttributeUsage(AttributeTargets.Class)]
    public class ClassTargetAttribute : Attribute
 {
    }

    // This attribute is only valid on a method.
    [AttributeUsage(AttributeTargets.Method)]
    public class MethodTargetAttribute : Attribute
 {
    }

    // This attribute is only valid on a constructor.
    [AttributeUsage(AttributeTargets.Constructor)]
    public class ConstructorTargetAttribute
 : Attribute {
    }

    // This attribute is only valid on a field.
    [AttributeUsage(AttributeTargets.Field)]
    public class FieldTargetAttribute : Attribute
 {
    }

    // This attribute is valid on a class or a method.
    [AttributeUsage(AttributeTargets.Class|AttributeTargets.Method)]
    public class ClassMethodTargetAttribute
 : Attribute {
    }

    // This attribute is valid on any target.
    [AttributeUsage(AttributeTargets.All)]
    public class AllTargetsAttribute : Attribute
 {
    }

    [ClassTarget]
    [ClassMethodTarget]
    [AllTargets]
    public class TestClassAttribute {
        [ConstructorTarget]
        [AllTargets]
        TestClassAttribute() {
        }

        [MethodTarget]
        [ClassMethodTarget]
        [AllTargets]
        public void Method1() {
        }

        [FieldTarget]
        [AllTargets]
        public int myInt;

        static void Main(string[]
 args) {
        }
    }
}
using namespace System;

namespace AttTargsCS
{

   // This attribute is only valid on a class.

   [AttributeUsage(AttributeTargets::Class)]
   public ref class ClassTargetAttribute: public
 Attribute{};


   // This attribute is only valid on a method.

   [AttributeUsage(AttributeTargets::Method)]
   public ref class MethodTargetAttribute:
 public Attribute{};


   // This attribute is only valid on a constructor.

   [AttributeUsage(AttributeTargets::Constructor)]
   public ref class ConstructorTargetAttribute:
 public Attribute{};


   // This attribute is only valid on a field.

   [AttributeUsage(AttributeTargets::Field)]
   public ref class FieldTargetAttribute: public
 Attribute{};


   // This attribute is valid on a class or a method.

   [AttributeUsage(AttributeTargets::Class|AttributeTargets::Method)]
   public ref class ClassMethodTargetAttribute:
 public Attribute{};


   // This attribute is valid on any target.

   [AttributeUsage(AttributeTargets::All)]
   public ref class AllTargetsAttribute: public
 Attribute{};


   [ClassTarget]
   [ClassMethodTarget]
   [AllTargets]
   public ref class TestClassAttribute
   {
   private:

      [ConstructorTarget]
      [AllTargets]
      TestClassAttribute(){}


   public:

      [MethodTarget]
      [ClassMethodTarget]
      [AllTargets]
      void Method1(){}


      [FieldTarget]
      [AllTargets]
      int myInt;
      static void Main(){}

   };

}

package AttTargsJSL;
import System.*;

// This attribute is only valid on a class.
/** @attribute AttributeUsage(AttributeTargets.Class)
 */
public class ClassTargetAttribute extends Attribute
{
} //ClassTargetAttribute

// This attribute is only valid on a method.
/** @attribute AttributeUsage(AttributeTargets.Method)
 */
public class MethodTargetAttribute extends
 Attribute
{
} //MethodTargetAttribute

// This attribute is only valid on a constructor.
/** @attribute AttributeUsage(AttributeTargets.Constructor)
 */
public class ConstructorTargetAttribute extends
 Attribute
{
} //ConstructorTargetAttribute

// This attribute is only valid on a field.
/** @attribute AttributeUsage(AttributeTargets.Field)
 */
public class FieldTargetAttribute extends Attribute
{
} //FieldTargetAttribute

// This attribute is valid on a class or a method.
/** @attribute AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)
 */
public class ClassMethodTargetAttribute extends
 Attribute
{
} //ClassMethodTargetAttribute

// This attribute is valid on any target.
/** @attribute AttributeUsage(AttributeTargets.All)
 */
public class AllTargetsAttribute extends Attribute
{
} //AllTargetsAttribute

/** @attribute ClassTarget()
 */
/** @attribute ClassMethodTarget()
 */
/** @attribute AllTargets()
 */
public class TestClassAttribute
{
    /** @attribute.ConstructorTarget ConstructorTarget()
     */
    /** @attribute AllTargets()
     */
    TestClassAttribute()
    {
    } //TestClassAttribute

    /** @attribute MethodTarget()
     */
    /** @attribute ClassMethodTarget()
     */
    /** @attribute AllTargets()
     */
    public void Method1()
    {
    } //Method1

    /** @attribute FieldTarget()
     */
    /** @attribute AllTargets()
     */
    public int myInt;

    public static void main(String[]
 args)
    {
    } //main
} //TestClassAttribute
import System;

package AttTargsJS {
    // This attribute is only valid on a class.
    AttributeUsage(AttributeTargets.Class)
    public class ClassTargetAttribute extends
 Attribute {
    }

    // This attribute is only valid on a method.
    AttributeUsage(AttributeTargets.Method)
    public class MethodTargetAttribute extends
 Attribute {
    }

    // This attribute is only valid on a constructor.
    AttributeUsage(AttributeTargets.Constructor)
    public class ConstructorTargetAttribute
 extends Attribute {
    }

    // This attribute is only valid on a field.
    AttributeUsage(AttributeTargets.Field)
    public class FieldTargetAttribute extends
 Attribute {
    }

    // This attribute is valid on a class or a method.
    AttributeUsage(AttributeTargets.Class|AttributeTargets.Method)
    public class ClassMethodTargetAttribute
 extends Attribute {
    }

    // This attribute is valid on any target.
    AttributeUsage(AttributeTargets.All)
    public class AllTargetsAttribute extends
 Attribute {
    }

    ClassTargetAttribute
        ClassMethodTargetAttribute
        AllTargetsAttribute
    public class TestClassAttribute {
        ConstructorTargetAttribute
        AllTargetsAttribute
        function TestClassAttribute() {
        }

        MethodTargetAttribute
                ClassMethodTargetAttribute
                AllTargetsAttribute
        public function Method1() {
        }

        FieldTargetAttribute
                AllTargetsAttribute
        public var myInt : int;

        static function Main(args : String[])
 {
        }
    }
}
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
System 名前空間
AttributeUsageAttribute



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「AttributeTargets 列挙体」の関連用語

AttributeTargets 列挙体のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



AttributeTargets 列挙体のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS