Exportieren (0) Drucken
Alle erweitern
Erweitern Minimieren
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

Type.BaseType-Eigenschaft

Ruft den Typ ab, von dem der aktuelle Type direkt vererbt wird.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public abstract Type BaseType { get; }

Eigenschaftswert

Typ: System.Type
Der Type, von dem der aktuelle Type direkt erbt, oder null, wenn der aktuelle Type die Object-Klasse oder eine Schnittstelle darstellt.

Implementiert

_Type.BaseType

Der Basistyp ist der Typ, von dem der aktuelle Typ direkt erbt. Object ist der einzige Typ, der keinen Basistyp besitzt. Daher wird als Basistyp von Objectnull zurückgegeben.

Schnittstellen erben von null oder mehr Basisschnittstellen. Daher gibt diese Eigenschaft null zurück, wenn das Type-Objekt eine Schnittstelle darstellt. Die Basisschnittstellen können mit GetInterfaces oder FindInterfaces bestimmt werden.

Wenn der aktuelle Type einen konstruierten generischen Typ darstellt, gibt der Basistyp die generischen Argumente wieder. Betrachten Sie beispielsweise die folgenden Deklarationen:


class B<U> { }
class C<T> : B<T> { }


Für den konstruierten C<int>-Typ (C(Of Integer) in Visual Basic) gibt die BaseType-Eigenschaft B<int> zurück.

Wenn der aktuelle Type einen Typparameter einer generischen Typdefinition darstellt, gibt BaseType die Klasseneinschränkung zurück, also die Klasse, die der Typparameter erben muss. Wenn keine Klasseneinschränkung vorhanden ist, gibt BaseTypeSystem.Object zurück.

Diese Eigenschaft ist schreibgeschützt.

Im folgenden Beispiel wird die Verwendung der BaseType-Eigenschaft veranschaulicht.


using System;
class TestType 
{
    public static void Main() 
    {
        Type t = typeof(int);
        Console.WriteLine("{0} inherits from {1}.", t,t.BaseType);
    }
}


Im folgenden Beispiel verwendet Rekursion, um die gesamte Vererbungshierarchie jeder Klasse aufgeführt, die in einer Assembly. Im Beispiel wird eine Klasse, die C genannt wird, die von einer Klasse, die B, die wiederum von einer Klasse abgeleitet wird, die A.


using System;

public class Example
{
   public static void Main()
   {
      foreach (var t in typeof(Example).Assembly.GetTypes()) {
         Console.WriteLine("{0} derived from: ", t.FullName);
         var derived = t;
         do { 
            derived = derived.BaseType;
            if (derived != null) 
               Console.WriteLine("   {0}", derived.FullName);

         } while (derived != null);
         Console.WriteLine(); 
      } 
   }
}

public class A {} 

public class B : A
{}

public class C : B   
{}
// The example displays the following output:
//       Example derived from:
//          System.Object
//       
//       A derived from:
//          System.Object
//       
//       B derived from:
//          A
//          System.Object
//       
//       C derived from:
//          B
//          A
//          System.Object


.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Portable Klassenbibliothek

Unterstützt in: Portable Klassenbibliothek

.NET für Windows Phone-Apps

Unterstützt in: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?
Anzeigen:
© 2015 Microsoft