1. Der instanceof-Operator wird verwendet, um zur Laufzeit anzugeben, ob ein Objekt eine Instanz einer bestimmten Klasse ist. Instanz von gibt einen booleschen Wert zurück, der angibt, ob das Objekt eine Instanz dieser bestimmten Klasse oder eine Unterklasse davon ist.
Verwendung:
result = object instanceof class
Parameter:
Ergebnis: erforderlich. Beliebige Variable.
Objekt: erforderlich. Beliebiger Objektausdruck.
Klasse: erforderlich. Jede definierte Objektklasse.
Hinweis:
Wenn das Objekt eine Instanz einer Klasse ist, gibt der Operator „instanceof“ „true“ zurück. Wenn „object“ keine Instanz der angegebenen Klasse ist oder „object“ null ist, wird „false“ zurückgegeben.
Zum Beispiel:
Boolean b; String str = "foo"; b = ( str instanceof String ); // true b = ( str instanceof Object ); // also true b = ( str instanceof Date ); // false, not a Date or subclass
Hinweis:
1) Der Nullwert ist keine Instanz eines Objekts, daher gibt das folgende Beispiel auf jeden Fall false zurück Die Variable wird als Typ deklariert.
String s = null; if ( s instanceof String ) // false, won't happen
2) Instanz von kann auch korrekt melden, ob ein Objekt ein Array und ein bestimmter Schnittstellentyp ist.
if ( foo instanceof byte[] )
2. Verwenden Sie getClass, um
Wir wissen, dass alles in Java ein Objekt ist und die Objekte, die wir im Allgemeinen verwenden, direkt oder indirekt von Object erben Art. Die Object-Klasse enthält eine Methode namens getClass, mit der die Typklasse einer Instanz abgerufen werden kann.
Nachdem Sie die Typklasse erhalten haben, können Sie einige der Methoden aufrufen, um die Typinformationen abzurufen. Die Hauptmethoden sind:
getName():String: Rufen Sie den vollständigen Namen des Typs ab.
getSuperClass():Class: Ruft die direkte übergeordnete Klasse dieses Typs ab. Wenn der Typ keine direkte übergeordnete Klasse hat, wird null zurückgegeben.
getInterfaces():Class[]: Alle von diesem Typ implementierten Schnittstellen abrufen.
isArray():boolean: Bestimmen Sie, ob der Typ ein Array ist.
isEnum():boolean: Bestimmen Sie, ob der Typ ein Aufzählungstyp ist.
isInterface():boolean: Bestimmen Sie, ob der Typ eine Schnittstelle ist.
isPrimitive():boolean: Bestimmen Sie, ob der Typ ein Basistyp ist, dh ob er int, boolean, double usw. ist.
isAssignableFrom(Class cls):boolean: Bestimmen Sie, ob dieser Typ die übergeordnete (Vorfahren-)Klasse oder die übergeordnete (Vorfahren-)Schnittstelle vom Typ cls ist.
getComponentType():Class: Wenn der Typ ein Array ist, wird der Komponententyp des Arrays zurückgegeben.
Für weitere Java-Kenntnisse beachten Sie bitte das Java-Grundlagen-Tutorial.
Das obige ist der detaillierte Inhalt vonJava bestimmt, ob ein Objekt vom Typ String ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!