This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

Type الفئة

Visual Studio 2010

يمثل نوع تصريحات: فئة أنواع أنواع الواجهات، صفيفة أنواع، أنواع القيم، تعداد، معلمات نوع، تعريفات نوع عام وأنواع الأنواع العامة constructed مفتوح أو مغلق.

مساحة الاسم:  System
التجميع:  mscorlib (في mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
[ClassInterfaceAttribute(ClassInterfaceType.None)]
public abstract class Type : MemberInfo, 
	_Type, IReflect

Type هو الجذرSystem.Reflectionوظيفة و هي الطريقة الأساسية للوصول إلى بيانات التعريف. استخدام الأعضاء Typeالحصول على معلومات حول إعلان نوع، مثل المنشئات، وظائف، حقول والخصائص والأحداث من فصل دراسي، بالإضافة إلى وحدة نمطية? والتجميع فيه الفئة هو نشرها.

C# typeofعامل التشغيل ( GetTypeعامل التشغيل في Visual أساسى، typeidعامل في Visual C + +) إرجاع Typeالكائن.

Type الكائن الذي يمثل نوع هو فريدة؛ وذلك هو، اثنين Typeتشير مراجع كائن إلى نفس الكائن إذا وفقط إذا كان وهي تمثل نفس النوع. يسمح ذلك للمقارنة بين Typeاستخدام الكائنات مرجعية المساواة.

ليس لديك أذونات مطلوبة من أجل التعليمات البرمجية باستخدام الانعكاس للحصول على معلومات حول أنواع وبها الأعضاء، بغض النظر مستويات الوصول الخاصة بهم. ليس لديك أذونات مطلوبة من أجل تعليمات برمجية باستخدام الانعكاس للوصول إلى الأعضاء عامة، أو غير ذلك أعضاء مستويات الوصول التي سيتم جعلها مرئي أثناء التحويل البرمجي العادي. ومع ذلك، لكي التعليمة البرمجية الخاصة بك إلى استخدام الانعكاس إلى يجب أن يكون للأعضاء الوصول الذي يكون غير قابل للوصول، مثل أساليب خاصة أو داخلي أو حماية حقول نوع لا يورث الفئة، تعليمات برمجية ReflectionPermission. انظر اعتبارات الأمان انعكاس

Type هو فئة قاعدة مجردة تسمح لتطبيقات متعددة. وسيوفر النظام دائماً فئة مشتقة RuntimeType. انعكاس، الجميع الفئات التي تبدأ بالكلمة وقت تشغيل يتم تاريخ الإنشاء مرة واحدة فقط كل كائن في النظام و دعم العمليات المقارنة.

ملاحظةملاحظة

في وحدات السيناريو متعدد العمليات، قم بعدم قفل Typeالكائنات بهدف يزامن الوصول إلى staticبيانات. قد أيضا تأمين تعليمات برمجية الأخرى التي لديك لا يوجد عنصر التحكم الخاص بك فئة نوع. قد يؤدي هذا إلى في حالة توقف تام. بدلاً من ذلك، قم بمزامنة الوصول إلى بيانات ثابتة بالتأمين خاصة staticكائن.

Th هو الفئة هو مؤشر الترابط الأمن; مؤشرات ترابط متعددة يمكن قراءتها بشكل متزامن من مثيل th هو النوع. مثيل Typeيمكن أن يمثل أي مما يلي أنواع:

  • الفئات

  • أنواع القيم

  • الصفائف

  • الواجهات

  • المؤشرات

  • عمليات التعداد

  • عام constructed أنواع وملفات تعريف نوع عام

  • كتابة الوسيطات و اكتب معلمات عامة constructed أنواع، ملفات تعريف نوع عام، و ملفات تعريف الأسلوب العام

مرجع إلى Typeكائن المقترنة يمكن الحصول على نوع بالطرق التالية:

  • Object.GetType إرجاع الأسلوب Typeكائن الذي يمثل نوع مثيل عنصر.

  • ثابتة GetTypeوظائف العودة Typeكائن الذي يمثل نوع معين عن طريق له اسم مؤهل بشكل كامل.

  • Module.GetTypes ، Module.GetType، و Module.FindTypesالأساليب بإرجاع Typeعلى الكائنات التي تمثل أنواع المعرفة في وحدة نمطية?. يمكن أن يستخدم الأسلوب أول للحصول على صفيفة من Typeالكائنات لكافة العامة والخاصة أنواع معرف في وحدة نمطية. (يمكنك الحصول على مثيل Moduleمن خلال Assembly.GetModuleأو Assembly.GetModulesوظائف، أو حتى Type.Moduleخاصية.)

  • FindInterfaces الأسلوب بإرجاع قائمة تمت تصفيتها للواجهة أنواع معتمدة من قبل نوع.

  • GetElementType إرجاع الأسلوب Typeكائن الذي يمثل العنصر.

  • GetInterfaces و GetInterfaceالأساليب بإرجاع Typeالكائنات التي تمثل الواجهة أنواع معتمدة من قبل نوع.

  • GetTypeArray أسلوب إرجاع صفيفة Typeيمثل الأنواع الكائنات المحددة بواسطة التعيين عشوائية من الكائنات. يتم تحديد الكائنات باستخدام صفيفة من نوع Object.

  • GetTypeFromProgID GetTypeFromCLSID يتم توفير وظائف لإمكانية التشغيل المتداخل COM. فإنها ترجع Typeالكائن الذي يمثل نوع محدد بواسطة ProgIDأو CLSID.

  • GetTypeFromHandle الطريقة توفير إمكانية التشغيل التفاعلي. تقوم بإرجاع Typeالذي يمثل النوع الكائن المحدد بواسطة معالج فئة.

  • C# typeofعامل، C + + typeidعامل، و Visual أساسى GetTypeالحصول على عامل التشغيل Typeالكائن نوع.

  • MakeGenericType إرجاع الأسلوب Typeالكائن الذي يمثل نوع عام constructed، الذي هو مفتوح بإنشاء نوع إذا به ContainsGenericParametersخاصية بإرجاع true، otherwهوe نوع constructed مغلق. يمكن أن يتم إنشاء مثيل نوع عام فقط إذا كان ذلك هو مغلق.

  • MakeArrayType ، MakePointerType، و MakeByRefTypeالأساليب بإرجاع Typeالكائنات التي تمثل، على التوالي، صفيفة نوع معين، مؤشر إلى نوع محدد ونوع معلمة المرجع ( refفي C#, ByRefفي Visual أساسى).

ملاحظةملاحظة

يمكن الوصول إلى فئة مشتقة المحمية الأعضاء فئات أساسية تعليمات برمجية's الاستدعاء. أيضا، هو مسموح بالوصول إلى تجميع الأعضاء التجميع تعليمات برمجية's الاستدعاء. كقاعدة، إذا كنت تسمح بالوصول في تعليمات برمجية المنضم المبكر، ثم أيضا مسموح الوصول في تعليمات برمجية المرتبطة المتأخر.

ملاحظةملاحظة

لا يورث الواجهات التي تتزايد في الواجهات الأخرى الأساليب في الواجهات الموسعة.

ملاحظات للمسئولين عن الإرث

عندما تقوم بالوراثة منType، يجب يمنع الأعضاء التاليين: GUID,InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]),Module,Assembly,TypeHandle,FullName,Namespace,AssemblyQualifiedName,BaseType,GetConstructorImpl,GetConstructors(BindingFlags),GetMethodImpl,GetMethods(BindingFlags),GetField(String, BindingFlags),GetFields(BindingFlags),GetInterface(String, Boolean),GetInterfaces(),GetEvent(String, BindingFlags),GetEvents(BindingFlags),GetPropertyImpl,GetProperties(BindingFlags),GetNestedType(String, BindingFlags),GetNestedTypes(BindingFlags),GetAttributeFlagsImpl,IsArrayImpl,IsByRefImpl,IsPointerImpl,IsPrimitiveImpl,IsCOMObjectImpl,GetElementType(),HasElementTypeImpl,UnderlyingSystemType,MemberInfo.Name,MemberInfo.IsDefined,MemberInfo.GetCustomAttributes(Boolean), وGetCustomAttributes.

يلي تعليمات برمجية مثال يوضح بعض ميزات تمثيلية Type. C# typeofعامل التشغيل ( GetTypeعامل في Vهوual أساسي typeidعامل في C + + Vهوual) هو المستخدمة للحصول على Typeالكائن الذي يمثل String. من القيم بالموضع هو Typeالكائن، GetMethodأسلوب هو المستخدمة للحصول على MethodInfoالذي يمثل Substringالتحميل الزائد التي تأخذ الموقع بداية والطول.

إلى التعرف على توقيع التحميل الزائد، مثال التعليمة البرمجية بإنشاء صفيفة مؤقت الذي يحتوي على عمودين Typeالكائنات التي تمثل int(Integerفي Visual أساسى).

ملاحظةملاحظة

إلى دقيق، فيحتوي الصفيف على هذين المرجعين إلى المثيل Typeالذي يمثل intفي الحالي تطبيق مجال. لأي نوع، هناك هو مثيل واحد فقط من Typeكل مجال تطبيق.

يستخدم المثال تعليمات برمجية MethodInfoإلى استدعاء Substringالأسلوب تشغيل السلسلة "مرحبا, World!"، وعرض النتيجة.


using System;
using System.Reflection;

class Example
{
    static void Main()
    {
        Type t = typeof(String);

        MethodInfo substr = t.GetMethod("Substring", 
            new Type[] { typeof(int), typeof(int) });

        Object result = 
            substr.Invoke("Hello, World!", new Object[] { 7, 5 });
        Console.WriteLine("{0} returned \"{1}\".", substr, result);
    }
}

/* This code example produces the following output:

System.String Substring(Int32, Int32) returned "World".
 */


هذا النوع هو مسار التنفيذ آمن.

نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, الإصدار x64 من نظام التشغيل Windows XP Professional, Windows XP Starter Edition, Windows Server 2008, نظام التشغيل Windows Server 2003, نظام التشغيل Windows Server 2000 المزود بحزمة الخدمة SP4, نظام التشغيل Windows Millennium Edition, نظام التشغيل Windows 98, Xbox 360, Zune

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0, 2.0, 1.1, 1.0

NET Framework. Client Profile

مدعوم في: 4

XNA Framework

مدعوم في: 3.0, 2.0, 1.0
إظهار: