Class.GetMethods Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt ein Array zurück, das Objekte enthält Method , die alle öffentlichen Methoden der Klasse oder Schnittstelle darstellen, die durch dieses Class Objekt dargestellt werden, einschließlich derjenigen, die von der Klasse oder Schnittstelle deklariert wurden, und diejenigen, die von Superklassen und Superinterfaces geerbt wurden.
[Android.Runtime.Register("getMethods", "()[Ljava/lang/reflect/Method;", "")]
public Java.Lang.Reflect.Method[] GetMethods();
[<Android.Runtime.Register("getMethods", "()[Ljava/lang/reflect/Method;", "")>]
member this.GetMethods : unit -> Java.Lang.Reflect.Method[]
Gibt zurück
das Array von Method Objekten, die die öffentlichen Methoden dieser Klasse darstellen
- Attribute
Hinweise
Gibt ein Array zurück, das Objekte enthält Method , die alle öffentlichen Methoden der Klasse oder Schnittstelle darstellen, die durch dieses Class Objekt dargestellt werden, einschließlich derjenigen, die von der Klasse oder Schnittstelle deklariert wurden, und diejenigen, die von Superklassen und Superinterfaces geerbt wurden.
Wenn dieses Class Objekt einen Arraytyp darstellt, weist das zurückgegebene Array ein Method Objekt für jede der öffentlichen Methoden auf, die vom Arraytyp Objectgeerbt werden. Es enthält Method kein Objekt für clone().
Wenn dieses Class Objekt eine Schnittstelle darstellt, enthält das zurückgegebene Array keine implizit deklarierten Methoden von Object. Wenn daher keine Methoden in dieser Schnittstelle oder einer ihrer Superinterfaces explizit deklariert werden, weist das zurückgegebene Array die Länge 0 auf. (Beachten Sie, dass ein Class Objekt, das eine Klasse darstellt, immer über öffentliche Methoden verfügt, die von Object.)
Das zurückgegebene Array enthält niemals Methoden mit den Namen "<init>" oder "<clinit>".
Die Elemente im zurückgegebenen Array sind nicht sortiert und nicht in einer bestimmten Reihenfolge angeordnet.
Im Allgemeinen wird das Ergebnis wie der folgende 4-Schritt-Algorithmus berechnet. Lassen Sie C die Klasse oder Schnittstelle sein, die durch dieses Class Objekt dargestellt wird: <ol><li> A Union von Methoden besteht aus: <ol type="a"><li> C's deklarierte öffentliche Instanz und statische Methoden wie zurückgegeben #getDeclaredMethods() und gefiltert, um nur öffentliche Methoden einzuschließen.</li li><> If C is a class other than Object, then include the result of invoking this algorithm rekursiv on the superclass of C.</li Li><> Schließen Sie die Ergebnisse des Aufrufens dieses Algorithmus rekursiv auf alle direkten Superinterfaces von C ein, enthalten jedoch nur Instanzmethoden.</li></ol></li li><> Union aus Schritt 1 wird in Teilmengen von Methoden mit derselben Signatur (Name, Parametertypen) und Rückgabetyp unterteilt.</li li><> Innerhalb jeder solchen Teilmenge werden nur die spezifischsten Methoden ausgewählt. Let method M be a method from a set of methods with same signature and return type. M ist besonders spezifisch, wenn keine solche Methode N != M aus demselben Satz vorhanden ist, sodass N spezifischer ist als M. N ist spezifischer als M, wenn: <ol type="a"><li> N wird von einer Klasse deklariert und M wird von einer Schnittstelle deklariert; oder</li><li> N und M werden sowohl von Klassen als auch von Schnittstellen deklariert, und der deklarierende Typ von N ist identisch mit oder ein Untertyp von Der Deklarierungstyp von M (eindeutig, wenn M- und N-Deklarierungstypen denselben Typ aufweisen, dann sind M und N die gleiche Methode).</li></ol></li li><> Li Das Ergebnis dieses Algorithmus ist die Vereinigung aller ausgewählten Methoden aus Schritt 3.</li></ol>
In 1.1 hinzugefügt.
Java Dokumentation für java.lang.Class.getMethods().
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.