instanceof kann nicht verbunden werden. Der Grund dafür ist: Das Schlüsselwort „instanceof“ wird verwendet, um zu überprüfen, ob ein Objekt eine Instanz einer bestimmten Klasse ist, und kann nicht direkt verwendet werden, um zu überprüfen, ob ein Objekt eine Instanz einer Schnittstelle ist, da die Schnittstelle nicht instanziiert werden kann.
Das Betriebssystem dieses Tutorials: Windows 10-System, Dell G3-Computer.
In Java wird das Schlüsselwort „instanceof“ verwendet, um zu prüfen, ob ein Objekt eine Instanz einer bestimmten Klasse ist. Es kann nicht direkt verwendet werden, um zu überprüfen, ob ein Objekt eine Instanz einer Schnittstelle ist, da Schnittstellen nicht instanziiert werden können. Es gibt jedoch einige indirekte Möglichkeiten, um zu überprüfen, ob ein Objekt eine Schnittstelle implementiert.
Zuerst müssen wir Generika und Typlöschung in Java verstehen. In Java sind Generika ein Mechanismus zur Typprüfung zur Kompilierungszeit. Damit können Sie überprüfen, ob Variablen, Parameter, Rückgabetypen usw. zur Kompilierungszeit mit bestimmten Typen übereinstimmen. Typlöschung ist ein Mechanismus, der generische Typinformationen zur Kompilierungszeit löscht, sodass der Laufzeitcode die generischen Typinformationen nicht kennt.
In Java können Sie Generika und Typlöschung verwenden, um eine Sammlung zu erstellen, die jeden Typ akzeptieren kann, z. B. List
Auf diese Weise können wir überprüfen, ob ein Objekt zur Laufzeit eine bestimmte Schnittstelle implementiert. Beispielsweise können wir eine Methode erstellen, die ein List
Hier ist ein einfacher Beispielcode, der zeigt, wie man mithilfe von Generika und Typlöschung überprüft, ob ein Objekt eine bestimmte Schnittstelle implementiert:
import java.util.List; public class InstanceOfInterfaceExample { public static <T> T findFirstInstance(List<Object> list, Class<T> interfaceClass) { for (Object obj : list) { if (interfaceClass.isInstance(obj)) { return interfaceClass.cast(obj); } } return null; } }
In diesem Beispiel akzeptiert die findFirstInstance-Methode ein List
Das obige ist der detaillierte Inhalt vonWarum Instanz von eine Schnittstelle herstellen kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!