ConstructorInfo Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vyhledá atributy konstruktoru třídy a poskytuje přístup k metadatům konstruktoru.
public ref class ConstructorInfo abstract : System::Reflection::MethodBase
public ref class ConstructorInfo abstract : System::Reflection::MethodBase, System::Runtime::InteropServices::_ConstructorInfo
public abstract class ConstructorInfo : System.Reflection.MethodBase
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
public abstract class ConstructorInfo : System.Reflection.MethodBase, System.Runtime.InteropServices._ConstructorInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class ConstructorInfo : System.Reflection.MethodBase, System.Runtime.InteropServices._ConstructorInfo
type ConstructorInfo = class
inherit MethodBase
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
type ConstructorInfo = class
inherit MethodBase
interface _ConstructorInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ConstructorInfo = class
inherit MethodBase
interface _ConstructorInfo
Public MustInherit Class ConstructorInfo
Inherits MethodBase
Public MustInherit Class ConstructorInfo
Inherits MethodBase
Implements _ConstructorInfo
- Dědičnost
- Odvozené
- Atributy
- Implementuje
Příklady
Následující příklad používá ConstructorInfo s GetConstructor a BindingFlags najít konstruktory, které odpovídají zadaným kritériím hledání.
using System;
using System.Reflection;
using System.Security;
public class MyClass3
{
public MyClass3(int i) { }
public static void Main()
{
try
{
Type myType = typeof(MyClass3);
Type[] types = new Type[1];
types[0] = typeof(int);
// Get the public instance constructor that takes an integer parameter.
ConstructorInfo constructorInfoObj = myType.GetConstructor(
BindingFlags.Instance | BindingFlags.Public, null,
CallingConventions.HasThis, types, null);
if (constructorInfoObj != null)
{
Console.WriteLine("The constructor of MyClass3 that is a public " +
"instance method and takes an integer as a parameter is: ");
Console.WriteLine(constructorInfoObj.ToString());
}
else
{
Console.WriteLine("The constructor of MyClass3 that is a public instance " +
"method and takes an integer as a parameter is not available.");
}
}
catch (ArgumentNullException e)
{
Console.WriteLine("ArgumentNullException: " + e.Message);
}
catch (ArgumentException e)
{
Console.WriteLine("ArgumentException: " + e.Message);
}
catch (SecurityException e)
{
Console.WriteLine("SecurityException: " + e.Message);
}
catch (Exception e)
{
Console.WriteLine("Exception: " + e.Message);
}
}
}
Public Class MyClass1
Public Sub New(ByVal i As Integer)
End Sub
Public Shared Sub Main()
Try
Dim myType As Type = GetType(MyClass1)
Dim types(0) As Type
types(0) = GetType(Integer)
' Get the public instance constructor that takes an integer parameter.
Dim constructorInfoObj As ConstructorInfo = _
myType.GetConstructor(BindingFlags.Instance Or _
BindingFlags.Public, Nothing, _
CallingConventions.HasThis, types, Nothing)
If Not (constructorInfoObj Is Nothing) Then
Console.WriteLine("The constructor of MyClass1 that " + _
"is a public instance method and takes an " + _
"integer as a parameter is: ")
Console.WriteLine(constructorInfoObj.ToString())
Else
Console.WriteLine("The constructor MyClass1 that " + _
"is a public instance method and takes an " + _
"integer as a parameter is not available.")
End If
Catch e As ArgumentNullException
Console.WriteLine("ArgumentNullException: " + e.Message)
Catch e As ArgumentException
Console.WriteLine("ArgumentException: " + e.Message)
Catch e As SecurityException
Console.WriteLine("SecurityException: " + e.Message)
Catch e As Exception
Console.WriteLine("Exception: " + e.Message)
End Try
End Sub
End Class
Poznámky
ConstructorInfo slouží ke zjišťování atributů konstruktoru i k vyvolání konstruktoru. Objekty se vytvářejí voláním Invoke vráceného ConstructorInfoGetConstructors objektu nebo GetConstructor metodou objektu Type .
Note
ConstructorInfo dědí z MethodBase několika členů, například IsGenericMethod, které lze použít k prozkoumání obecných metod. V konstruktorech rozhraní .NET Framework verze 2.0 nemůže být obecný, takže tito členové vracejí false nebo null.
Poznámky pro implementátory
Při dědění z ConstructorInfo, musíte přepsat následující člen přetížení: Invoke(BindingFlags, Binder, Object[], CultureInfo).
Konstruktory
| Name | Description |
|---|---|
| ConstructorInfo() |
Inicializuje novou instanci ConstructorInfo třídy. |
Pole
| Name | Description |
|---|---|
| ConstructorName |
Představuje název metody konstruktoru třídy, protože je uložen v metadatech. Tento název je vždy ".ctor". Toto pole je určeno pouze ke čtení. |
| TypeConstructorName |
Představuje název metody konstruktoru typu, protože je uložen v metadatech. Tento název je vždy ".cctor". Tato vlastnost je pouze pro čtení. |
Vlastnosti
| Name | Description |
|---|---|
| Attributes |
Získá atributy přidružené k této metodě. (Zděděno od MethodBase) |
| CallingConvention |
Získá hodnotu označující konvence volání pro tuto metodu. (Zděděno od MethodBase) |
| ContainsGenericParameters |
Získá hodnotu určující, zda obecná metoda obsahuje nepřiřazené parametry obecného typu. (Zděděno od MethodBase) |
| CustomAttributes |
Získá kolekci, která obsahuje vlastní atributy tohoto člena. (Zděděno od MemberInfo) |
| DeclaringType |
Získá třídu, která deklaruje tohoto člena. (Zděděno od MemberInfo) |
| IsAbstract |
Získá hodnotu určující, zda metoda je abstraktní. (Zděděno od MethodBase) |
| IsAssembly |
Získá hodnotu určující, zda potenciální viditelnost této metody nebo konstruktoru je popsána Assembly; to znamená, že metoda nebo konstruktor je viditelná nejvýše pro jiné typy ve stejném sestavení a není viditelná pro odvozené typy mimo sestavení. (Zděděno od MethodBase) |
| IsCollectible |
Získá hodnotu, která označuje, zda tento MemberInfo objekt odkazuje na jedno nebo více sestavení uložených v collectible AssemblyLoadContext. (Zděděno od MemberInfo) |
| IsConstructedGenericMethod |
Vyhledá atributy konstruktoru třídy a poskytuje přístup k metadatům konstruktoru. (Zděděno od MethodBase) |
| IsConstructor |
Získá hodnotu určující, zda metoda je konstruktor. (Zděděno od MethodBase) |
| IsFamily |
Získá hodnotu určující, zda viditelnost této metody nebo konstruktoru je popsána Family; to znamená, že metoda nebo konstruktor je viditelná pouze v rámci své třídy a odvozené třídy. (Zděděno od MethodBase) |
| IsFamilyAndAssembly |
Získá hodnotu určující, zda viditelnost této metody nebo konstruktoru je popsána FamANDAssem; to znamená, že metoda nebo konstruktor lze volat odvozenými třídami, ale pouze pokud jsou ve stejném sestavení. (Zděděno od MethodBase) |
| IsFamilyOrAssembly |
Získá hodnotu určující, zda potenciální viditelnost této metody nebo konstruktoru je popsána FamORAssem; to znamená, že metoda nebo konstruktor lze volat odvozenými třídami bez ohledu na to, kde jsou, a třídami ve stejném sestavení. (Zděděno od MethodBase) |
| IsFinal |
Získá hodnotu určující, zda tato metoda je |
| IsGenericMethod |
Získá hodnotu určující, zda je metoda obecná. (Zděděno od MethodBase) |
| IsGenericMethodDefinition |
Získá hodnotu určující, zda metoda je obecná definice metody. (Zděděno od MethodBase) |
| IsHideBySig |
Získá hodnotu určující, zda je v odvozené třídě skrytý pouze člen stejného typu s přesně stejným podpisem. (Zděděno od MethodBase) |
| IsPrivate |
Získá hodnotu určující, zda je tento člen soukromý. (Zděděno od MethodBase) |
| IsPublic |
Získá hodnotu určující, zda je to veřejná metoda. (Zděděno od MethodBase) |
| IsSecurityCritical |
Získá hodnotu, která určuje, zda aktuální metoda nebo konstruktor je kritická zabezpečení nebo zabezpečení-bezpečné-kritické na aktuální úrovni důvěryhodnosti, a proto může provádět kritické operace. (Zděděno od MethodBase) |
| IsSecuritySafeCritical |
Získá hodnotu, která označuje, zda aktuální metoda nebo konstruktor je zabezpečení-bezpečné-kritické na aktuální úrovni důvěryhodnosti; to znamená, jestli může provádět kritické operace a může k němu přistupovat transparentní kód. (Zděděno od MethodBase) |
| IsSecurityTransparent |
Získá hodnotu, která označuje, zda aktuální metoda nebo konstruktor je transparentní na aktuální úrovni důvěryhodnosti, a proto nemůže provádět kritické operace. (Zděděno od MethodBase) |
| IsSpecialName |
Získá hodnotu označující, zda tato metoda má speciální název. (Zděděno od MethodBase) |
| IsStatic |
Získá hodnotu určující, zda metoda je |
| IsVirtual |
Získá hodnotu určující, zda metoda je |
| MemberType |
MemberTypes Získá hodnotu označující, že tento člen je konstruktor. |
| MetadataToken |
Získá hodnotu, která identifikuje prvek metadat. (Zděděno od MemberInfo) |
| MethodHandle |
Získá popisovač k interní metadata reprezentace metody. (Zděděno od MethodBase) |
| MethodImplementationFlags |
Získá MethodImplAttributes příznaky, které určují atributy implementace metody. (Zděděno od MethodBase) |
| Module |
Získá modul, ve kterém typ, který deklaruje člen reprezentovaný proudem MemberInfo je definován. (Zděděno od MemberInfo) |
| Name |
Získá název aktuálního člena. (Zděděno od MemberInfo) |
| ReflectedType |
Získá objekt třídy, který byl použit k získání této instance |
Metody
| Name | Description |
|---|---|
| Equals(Object) |
Vrátí hodnotu, která určuje, zda je tato instance rovna zadanému objektu. |
| GetCustomAttributes(Boolean) |
Při přepsání v odvozené třídě vrátí pole všech vlastních atributů použitých na tento člen. (Zděděno od MemberInfo) |
| GetCustomAttributes(Type, Boolean) |
Při přepsání v odvozené třídě vrátí pole vlastních atributů použitých na tento člen a identifikovaný .Type (Zděděno od MemberInfo) |
| GetCustomAttributesData() |
Vrátí seznam CustomAttributeData objektů představujících data o atributech, které byly použity na cílového člena. (Zděděno od MemberInfo) |
| GetGenericArguments() |
Vrátí pole Type objektů, které představují argumenty typu obecné metody nebo parametry typu definice obecné metody. (Zděděno od MethodBase) |
| GetHashCode() |
Vrátí kód hash pro tuto instanci. |
| GetMethodBody() |
Při přepsání v odvozené třídě získá MethodBody objekt, který poskytuje přístup k msIL stream, místní proměnné a výjimky pro aktuální metodu. (Zděděno od MethodBase) |
| GetMethodImplementationFlags() |
Při přepsání v odvozené třídě vrátí MethodImplAttributes příznaky. (Zděděno od MethodBase) |
| GetParameters() |
Při přepsání v odvozené třídě získá parametry zadané metody nebo konstruktoru. (Zděděno od MethodBase) |
| GetType() |
Vyhledá atributy konstruktoru třídy a poskytuje přístup k metadatům konstruktoru. |
| HasSameMetadataDefinitionAs(MemberInfo) |
Vyhledá atributy konstruktoru třídy a poskytuje přístup k metadatům konstruktoru. (Zděděno od MemberInfo) |
| Invoke(BindingFlags, Binder, Object[], CultureInfo) |
Při implementaci v odvozené třídě vyvolá konstruktor reflektovaný tímto |
| Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
Při přepsání v odvozené třídě vyvolá reflektované metody nebo konstruktoru s danými parametry. (Zděděno od MethodBase) |
| Invoke(Object, Object[]) |
Vyvolá metodu nebo konstruktor reprezentovaný aktuální instancí pomocí zadaných parametrů. (Zděděno od MethodBase) |
| Invoke(Object[]) |
Vyvolá konstruktor, který odráží instanci se zadanými parametry a poskytuje výchozí hodnoty parametrů, které se běžně nepoužívají. |
| IsDefined(Type, Boolean) |
Při přepsání v odvozené třídě určuje, zda jeden nebo více atributů zadaného typu nebo jeho odvozených typů se použije na tento člen. (Zděděno od MemberInfo) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Operátory
| Name | Description |
|---|---|
| Equality(ConstructorInfo, ConstructorInfo) |
Určuje, zda jsou dva ConstructorInfo objekty stejné. |
| Inequality(ConstructorInfo, ConstructorInfo) |
Určuje, zda jsou dva ConstructorInfo objekty nerovny. |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| _ConstructorInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání. |
| _ConstructorInfo.GetType() |
Type Získá objekt představující ConstructorInfo typ. |
| _ConstructorInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Načte informace o typu objektu, který lze použít k získání informací o typu pro rozhraní. |
| _ConstructorInfo.GetTypeInfoCount(UInt32) |
Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1). |
| _ConstructorInfo.Invoke_2(Object, BindingFlags, Binder, Object[], CultureInfo) |
Poskytuje objekty MODELU COM s přístupem nezávislou na verzi k Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) metodě. |
| _ConstructorInfo.Invoke_3(Object, Object[]) |
Poskytuje objekty MODELU COM s přístupem nezávislou na verzi k Invoke(Object, Object[]) metodě. |
| _ConstructorInfo.Invoke_4(BindingFlags, Binder, Object[], CultureInfo) |
Poskytuje objekty MODELU COM s přístupem nezávislou na verzi k Invoke(BindingFlags, Binder, Object[], CultureInfo) metodě. |
| _ConstructorInfo.Invoke_5(Object[]) |
Poskytuje objekty MODELU COM s přístupem nezávislou na verzi k Invoke(Object[]) metodě. |
| _ConstructorInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Poskytuje přístup k vlastnostem a metodám vystaveným objektem. |
| _MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání. (Zděděno od MemberInfo) |
| _MemberInfo.GetType() |
Type Získá objekt představující MemberInfo třídu. (Zděděno od MemberInfo) |
| _MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Načte informace o typu objektu, který lze použít k získání informací o typu pro rozhraní. (Zděděno od MemberInfo) |
| _MemberInfo.GetTypeInfoCount(UInt32) |
Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1). (Zděděno od MemberInfo) |
| _MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Poskytuje přístup k vlastnostem a metodám vystaveným objektem. (Zděděno od MemberInfo) |
| _MethodBase.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání. (Zděděno od MethodBase) |
| _MethodBase.GetType() |
Popis tohoto člena naleznete v tématu GetType(). (Zděděno od MethodBase) |
| _MethodBase.GetTypeInfo(UInt32, UInt32, IntPtr) |
Načte informace o typu objektu, který lze použít k získání informací o typu pro rozhraní. (Zděděno od MethodBase) |
| _MethodBase.GetTypeInfoCount(UInt32) |
Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1). (Zděděno od MethodBase) |
| _MethodBase.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Poskytuje přístup k vlastnostem a metodám vystaveným objektem. (Zděděno od MethodBase) |
| _MethodBase.IsAbstract |
Popis tohoto člena naleznete v tématu IsAbstract. (Zděděno od MethodBase) |
| _MethodBase.IsAssembly |
Popis tohoto člena naleznete v tématu IsAssembly. (Zděděno od MethodBase) |
| _MethodBase.IsConstructor |
Popis tohoto člena naleznete v tématu IsConstructor. (Zděděno od MethodBase) |
| _MethodBase.IsFamily |
Popis tohoto člena naleznete v tématu IsFamily. (Zděděno od MethodBase) |
| _MethodBase.IsFamilyAndAssembly |
Popis tohoto člena naleznete v tématu IsFamilyAndAssembly. (Zděděno od MethodBase) |
| _MethodBase.IsFamilyOrAssembly |
Popis tohoto člena naleznete v tématu IsFamilyOrAssembly. (Zděděno od MethodBase) |
| _MethodBase.IsFinal |
Popis tohoto člena naleznete v tématu IsFinal. (Zděděno od MethodBase) |
| _MethodBase.IsHideBySig |
Popis tohoto člena naleznete v tématu IsHideBySig. (Zděděno od MethodBase) |
| _MethodBase.IsPrivate |
Popis tohoto člena naleznete v tématu IsPrivate. (Zděděno od MethodBase) |
| _MethodBase.IsPublic |
Popis tohoto člena naleznete v tématu IsPublic. (Zděděno od MethodBase) |
| _MethodBase.IsSpecialName |
Popis tohoto člena naleznete v tématu IsSpecialName. (Zděděno od MethodBase) |
| _MethodBase.IsStatic |
Popis tohoto člena naleznete v tématu IsStatic. (Zděděno od MethodBase) |
| _MethodBase.IsVirtual |
Popis tohoto člena naleznete v tématu IsVirtual. (Zděděno od MethodBase) |
| ICustomAttributeProvider.GetCustomAttributes(Boolean) |
Vrátí pole všech vlastních atributů definovaných pro tohoto člena, s výjimkou pojmenovaných atributů, nebo prázdné pole, pokud neexistují žádné vlastní atributy. (Zděděno od MemberInfo) |
| ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
Vrátí pole vlastních atributů definovaných pro tento člen, identifikovaný podle typu nebo prázdné pole, pokud neexistují žádné vlastní atributy tohoto typu. (Zděděno od MemberInfo) |
| ICustomAttributeProvider.IsDefined(Type, Boolean) |
Určuje, zda je u tohoto člena |
Metody rozšíření
| Name | Description |
|---|---|
| GetCustomAttribute(MemberInfo, Type, Boolean) |
Načte vlastní atribut zadaného typu, který se použije u zadaného členu, a volitelně zkontroluje předky daného člena. |
| GetCustomAttribute(MemberInfo, Type) |
Načte vlastní atribut zadaného typu, který se použije na zadaný člen. |
| GetCustomAttribute<T>(MemberInfo, Boolean) |
Načte vlastní atribut zadaného typu, který se použije u zadaného členu, a volitelně zkontroluje předky daného člena. |
| GetCustomAttribute<T>(MemberInfo) |
Načte vlastní atribut zadaného typu, který se použije na zadaný člen. |
| GetCustomAttributes(MemberInfo, Boolean) |
Načte kolekci vlastních atributů, které se použijí na zadaného člena, a volitelně zkontroluje předky daného člena. |
| GetCustomAttributes(MemberInfo, Type, Boolean) |
Načte kolekci vlastních atributů zadaného typu, které se použijí na zadaný člen, a volitelně zkontroluje nadřazené objekty daného člena. |
| GetCustomAttributes(MemberInfo, Type) |
Načte kolekci vlastních atributů zadaného typu, které se použijí na zadaný člen. |
| GetCustomAttributes(MemberInfo) |
Načte kolekci vlastních atributů, které se použijí na zadaný člen. |
| GetCustomAttributes<T>(MemberInfo, Boolean) |
Načte kolekci vlastních atributů zadaného typu, které se použijí na zadaný člen, a volitelně zkontroluje nadřazené objekty daného člena. |
| GetCustomAttributes<T>(MemberInfo) |
Načte kolekci vlastních atributů zadaného typu, které se použijí na zadaný člen. |
| GetMetadataToken(MemberInfo) |
Získá token metadat pro daného člena, pokud je k dispozici. |
| HasMetadataToken(MemberInfo) |
Vrátí hodnotu, která určuje, zda je token metadat k dispozici pro zadaného člena. |
| IsDefined(MemberInfo, Type, Boolean) |
Určuje, zda se vlastní atributy zadaného typu použijí na zadaný člen a volitelně se použijí na jeho nadřazené objekty. |
| IsDefined(MemberInfo, Type) |
Určuje, zda jsou u zadaného člena použity vlastní atributy zadaného typu. |
Platí pro
Bezpečný přístup z více vláken
Tento typ je bezpečný pro přístup z více vláken.