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í.
Zjišťuje 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
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class ConstructorInfo : System.Reflection.MethodBase
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
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ConstructorInfo = class
inherit MethodBase
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 k nalezení konstruktorů, které odpovídají zadaným kritériím vyhledávání.
using namespace System;
using namespace System::Reflection;
using namespace System::Security;
public ref class MyClass1
{
public:
MyClass1( int i ){}
};
int main()
{
try
{
Type^ myType = MyClass1::typeid;
array<Type^>^types = gcnew array<Type^>(1);
types[ 0 ] = int::typeid;
// Get the public instance constructor that takes an integer parameter.
ConstructorInfo^ constructorInfoObj = myType->GetConstructor( static_cast<BindingFlags>(BindingFlags::Instance | BindingFlags::Public), nullptr, CallingConventions::HasThis, types, nullptr );
if ( constructorInfoObj != nullptr )
{
Console::WriteLine( "The constructor of MyClass1 that is a public instance method and takes an integer as a parameter is: " );
Console::WriteLine( constructorInfoObj );
}
else
{
Console::WriteLine( "The constructor of MyClass1 that is a public instance method and takes an integer as a parameter is not available." );
}
}
catch ( ArgumentNullException^ e )
{
Console::WriteLine( "ArgumentNullException: {0}", e->Message );
}
catch ( ArgumentException^ e )
{
Console::WriteLine( "ArgumentException: {0}", e->Message );
}
catch ( SecurityException^ e )
{
Console::WriteLine( "SecurityException: {0}", e->Message );
}
catch ( Exception^ e )
{
Console::WriteLine( "Exception: {0}", e->Message );
}
}
using System;
using System.Reflection;
using System.Security;
public class MyClass1
{
public MyClass1(int i){}
public static void Main()
{
try
{
Type myType = typeof(MyClass1);
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 MyClass1 that is a public " +
"instance method and takes an integer as a parameter is: ");
Console.WriteLine(constructorInfoObj.ToString());
}
else
{
Console.WriteLine("The constructor of MyClass1 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štění atributů konstruktoru a také k vyvolání konstruktoru. Objekty jsou vytvořeny voláním Invoke ConstructorInfo
GetConstructors GetConstructor metody nebo Type objektu.
Poznámka
ConstructorInfo dědí z MethodBase několika členů, například IsGenericMethod , které lze použít k prohlédnutí obecných metod. v konstruktorech .NET Framework verze 2,0 nemůžou být obecné, takže tyto členy vrátí false
nebo null
.
Poznámky pro implementátory
Při dědění z je ConstructorInfo
nutné přepsat následující přetížení člena: Invoke(BindingFlags, Binder, Object[], CultureInfo) .
Konstruktory
ConstructorInfo() |
Inicializuje novou instanci ConstructorInfo třídy. |
Pole
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 jen 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 jen ke čtení. |
Vlastnosti
Attributes |
Získá atributy přidružené k této metodě. (Zděděno od MethodBase) |
CallingConvention |
Získá hodnotu, která označuje 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 členu. (Zděděno od MemberInfo) |
DeclaringType |
Získá třídu, která deklaruje tohoto člena. (Zděděno od MemberInfo) |
IsAbstract |
Načte hodnotu, která označuje, jestli je metoda abstraktní. (Zděděno od MethodBase) |
IsAssembly |
Získá hodnotu, která označuje, zda je potenciální viditelnost této metody nebo konstruktoru 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á určuje, zda je tento objekt MemberInfo součástí sestavení držba v collectible AssemblyLoadContext . (Zděděno od MemberInfo) |
IsConstructedGenericMethod | (Zděděno od MethodBase) |
IsConstructor |
Načte hodnotu, která označuje, jestli je metoda konstruktorem. (Zděděno od MethodBase) |
IsFamily |
Získá hodnotu, která označuje, zda je tato metoda nebo konstruktor popsána Family . to znamená, že metoda nebo konstruktor je viditelný pouze v rámci své třídy a odvozených tříd. (Zděděno od MethodBase) |
IsFamilyAndAssembly |
Získá hodnotu, která označuje, zda je tato metoda nebo konstruktor popsána FamANDAssem . to znamená, že metodu nebo konstruktor mohou být volány odvozenými třídami, ale pouze v případě, že jsou ve stejném sestavení. (Zděděno od MethodBase) |
IsFamilyOrAssembly |
Získá hodnotu, která označuje, zda je potenciální viditelnost této metody nebo konstruktoru popsána hodnotou FamORAssem ; to znamená, že metodu nebo konstruktor mohou být volány odvozenými třídami, ať jsou, a třídy ve stejném sestavení. (Zděděno od MethodBase) |
IsFinal |
Načte hodnotu, která označuje, zda je tato metoda |
IsGenericMethod |
Získá hodnotu, která označuje, zda je metoda obecná. (Zděděno od MethodBase) |
IsGenericMethodDefinition |
Získá hodnotu, která označuje, zda je metoda definicí obecné metody. (Zděděno od MethodBase) |
IsHideBySig |
Získá hodnotu, která označuje, zda je v odvozené třídě skrytý pouze člen stejného typu, který má přesně stejný podpis. (Zděděno od MethodBase) |
IsPrivate |
Načte hodnotu, která označuje, jestli je tento člen soukromý. (Zděděno od MethodBase) |
IsPublic |
Načte hodnotu, která označuje, zda se jedná o veřejnou metodu. (Zděděno od MethodBase) |
IsSecurityCritical |
Získá hodnotu, která označuje, zda je aktuální metoda nebo konstruktor v aktuální úrovni vztahu důvěryhodnosti kritický pro zabezpečení nebo bezpečný a proto může provádět kritické operace. (Zděděno od MethodBase) |
IsSecuritySafeCritical |
Získá hodnotu, která označuje, zda je aktuální metoda nebo konstruktor v aktuální úrovni vztahu důvěryhodnosti zabezpečený. To znamená, zda může provádět kritické operace a lze k němu přistupovat transparentním kódem. (Zděděno od MethodBase) |
IsSecurityTransparent |
Získá hodnotu, která označuje, zda je aktuální metoda nebo konstruktor transparentní na aktuální úrovni vztahu důvěryhodnosti, a proto nemůže provádět kritické operace. (Zděděno od MethodBase) |
IsSpecialName |
Načte hodnotu, která označuje, jestli má tato metoda speciální název. (Zděděno od MethodBase) |
IsStatic |
Načte hodnotu, která označuje, jestli je metoda |
IsVirtual |
Načte hodnotu, která označuje, jestli je metoda |
MemberType |
Načte MemberTypes hodnotu, která označuje, že tento člen je konstruktor. |
MemberType |
Při přepsání v odvozené třídě získá hodnotu určující typ členu MemberTypes – metodu, konstruktor, událost atd. (Zděděno od MemberInfo) |
MetadataToken |
Získá hodnotu, která identifikuje element metadat. (Zděděno od MemberInfo) |
MethodHandle |
Získá popisovač interní reprezentace metadat 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 je definován typ, který deklaruje člena reprezentovaného aktuálním MemberInfo . (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
Equals(Object) |
Vrací hodnotu, která určuje, zda je tato instance rovna zadanému objektu. |
Equals(Object) |
Vrací hodnotu, která určuje, zda je tato instance rovna zadanému objektu. (Zděděno od MethodBase) |
GetCustomAttributes(Boolean) |
Při přepsání v odvozené třídě vrátí pole všech vlastních atributů použitých pro tohoto člena. (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 pro tohoto člena a identifikovaných objektem Type . (Zděděno od MemberInfo) |
GetCustomAttributesData() |
Vrátí seznam objektů CustomAttributeData představujících data o atributech, které byly použity u cílového členu. (Zděděno od MemberInfo) |
GetGenericArguments() |
Vrátí pole objektů, které představují argumenty typu obecné metody nebo parametry typu Type definice obecné metody. (Zděděno od MethodBase) |
GetHashCode() |
Vrátí hodnotu hash pro tuto instanci. |
GetHashCode() |
Vrátí hodnotu hash pro tuto instanci. (Zděděno od MethodBase) |
GetMethodBody() |
Při přepsání v odvozené třídě získá objekt, který poskytuje přístup k datovému proudu jazyka MSIL, místním proměnným a MethodBody výjimce 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() |
Zjišťuje atributy konstruktoru třídy a poskytuje přístup k metadatům konstruktoru. |
GetType() | (Zděděno od MethodBase) |
HasSameMetadataDefinitionAs(MemberInfo) | (Zděděno od MemberInfo) |
Invoke(BindingFlags, Binder, Object[], CultureInfo) |
Při implementaci v odvozené třídě vyvolá konstruktor reflektující |
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
Při přepsání v odvozené třídě vyvolá metodu nebo konstruktor se zadaný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 odrážející instanci, která má zadané parametry, a poskytuje výchozí hodnoty pro parametry, které nejsou běžně používány. |
IsDefined(Type, Boolean) |
Při přepsání v odvozené třídě označuje, zda jeden nebo více atributů zadaného typu nebo jeho odvozených typů je použit na tento člen. (Zděděno od MemberInfo) |
MemberwiseClone() |
Vytvoří použádnou kopii aktuálního souboru Object. (Zděděno od Object) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Operátory
Equality(ConstructorInfo, ConstructorInfo) |
Určuje, zda ConstructorInfo jsou dva objekty stejné. |
Inequality(ConstructorInfo, ConstructorInfo) |
Určuje, zda dva ConstructorInfo objekty nejsou stejné. |
Explicitní implementace rozhraní
_ConstructorInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání. |
_ConstructorInfo.GetType() |
Získá Type 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(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Poskytuje přístup k vlastnostem a metodám vystaveným objektem. |
_ConstructorInfo.Invoke_2(Object, BindingFlags, Binder, Object[], CultureInfo) |
Poskytuje objekty modelu COM, které mají přístup k metodě nezávisle na verzi Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) . |
_ConstructorInfo.Invoke_3(Object, Object[]) |
Poskytuje objekty modelu COM, které mají přístup k metodě nezávisle na verzi Invoke(Object, Object[]) . |
_ConstructorInfo.Invoke_4(BindingFlags, Binder, Object[], CultureInfo) |
Poskytuje objekty modelu COM, které mají přístup k metodě nezávisle na verzi Invoke(BindingFlags, Binder, Object[], CultureInfo) . |
_ConstructorInfo.Invoke_5(Object[]) |
Poskytuje objekty modelu COM, které mají přístup k metodě nezávisle na verzi Invoke(Object[]) . |
_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() |
Získá Type objekt reprezentují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 najdete 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 najdete v tématu IsAbstract . (Zděděno od MethodBase) |
_MethodBase.IsAssembly |
Popis tohoto člena najdete v tématu IsAssembly . (Zděděno od MethodBase) |
_MethodBase.IsConstructor |
Popis tohoto člena najdete v tématu IsConstructor . (Zděděno od MethodBase) |
_MethodBase.IsFamily |
Popis tohoto člena najdete v tématu IsFamily . (Zděděno od MethodBase) |
_MethodBase.IsFamilyAndAssembly |
Popis tohoto člena najdete v tématu IsFamilyAndAssembly . (Zděděno od MethodBase) |
_MethodBase.IsFamilyOrAssembly |
Popis tohoto člena najdete v tématu IsFamilyOrAssembly . (Zděděno od MethodBase) |
_MethodBase.IsFinal |
Popis tohoto člena najdete v tématu IsFinal . (Zděděno od MethodBase) |
_MethodBase.IsHideBySig |
Popis tohoto člena najdete v tématu IsHideBySig . (Zděděno od MethodBase) |
_MethodBase.IsPrivate |
Popis tohoto člena najdete v tématu IsPrivate . (Zděděno od MethodBase) |
_MethodBase.IsPublic |
Popis tohoto člena najdete v tématu IsPublic . (Zděděno od MethodBase) |
_MethodBase.IsSpecialName |
Popis tohoto člena najdete v tématu IsSpecialName . (Zděděno od MethodBase) |
_MethodBase.IsStatic |
Popis tohoto člena najdete v tématu IsStatic . (Zděděno od MethodBase) |
_MethodBase.IsVirtual |
Popis tohoto člena najdete v tématu IsVirtual . (Zděděno od MethodBase) |
ICustomAttributeProvider.GetCustomAttributes(Boolean) |
Vrátí pole všech vlastních atributů definovaných u tohoto člena, s výjimkou pojmenovaných atributů nebo prázdného pole, pokud nejsou k dispozici žádné vlastní atributy. (Zděděno od MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
Vrátí pole vlastních atributů definovaného pro tento člen, identifikovaných podle typu nebo prázdné pole, pokud nejsou k dispozici žádné vlastní atributy daného typu. (Zděděno od MemberInfo) |
ICustomAttributeProvider.IsDefined(Type, Boolean) |
Určuje, zda |
Metody rozšíření
GetCustomAttribute(MemberInfo, Type) |
Načte vlastní atribut zadaného typu, který se použije u zadaného člena. |
GetCustomAttribute(MemberInfo, Type, Boolean) |
Načte vlastní atribut zadaného typu, který se použije u zadaného člena, a volitelně zkontroluje nadřazené členy daného člena. |
GetCustomAttribute<T>(MemberInfo) |
Načte vlastní atribut zadaného typu, který se použije u zadaného člena. |
GetCustomAttribute<T>(MemberInfo, Boolean) |
Načte vlastní atribut zadaného typu, který se použije u zadaného člena, a volitelně zkontroluje nadřazené členy daného člena. |
GetCustomAttributes(MemberInfo) |
Načte kolekci vlastních atributů, které se použijí u zadaného člena. |
GetCustomAttributes(MemberInfo, Boolean) |
Načte kolekci vlastních atributů, které se použijí u zadaného člena, a volitelně zkontroluje předky daného člena. |
GetCustomAttributes(MemberInfo, Type) |
Načte kolekci vlastních atributů zadaného typu, které se použijí u zadaného člena. |
GetCustomAttributes(MemberInfo, Type, Boolean) |
Načte kolekci vlastních atributů zadaného typu, které se použijí u zadaného člena, a volitelně zkontroluje předky daného člena. |
GetCustomAttributes<T>(MemberInfo) |
Načte kolekci vlastních atributů zadaného typu, které se použijí u zadaného člena. |
GetCustomAttributes<T>(MemberInfo, Boolean) |
Načte kolekci vlastních atributů zadaného typu, které se použijí u zadaného člena, a volitelně zkontroluje předky daného člena. |
IsDefined(MemberInfo, Type) |
Určuje, zda se u zadaného člena použijí vlastní atributy zadaného typu. |
IsDefined(MemberInfo, Type, Boolean) |
Určuje, zda se u zadaného člena použijí vlastní atributy zadaného typu a volitelně se použijí u svých předků. |
GetMetadataToken(MemberInfo) |
Získá token metadat pro daného člena, pokud je k dispozici. |
HasMetadataToken(MemberInfo) |
Vrátí hodnotu, která určuje, jestli je token metadat dostupný pro zadaného člena. |
Platí pro
Bezpečný přístup z více vláken
Tento typ je bezpečný pro přístup z více vláken.