Diese kurze Lektion in unserem Lerne Java für Android-Entwicklung Serie zeigt Ihnen, wie Sie den Typ eines Objekts mit Hilfe von Beispielvon
Stichwort in Java.
Wir sprachen über viele der grundlegenden Java-Bedingungsanweisungen in der Lernen Sie Java für Android-Entwicklung: Java-Syntax Tutorial. Zum Beispiel bietet Java alle typischen bedingten Operatoren, die man erwarten könnte, einschließlich solcher, die auf Gleichheit, Ungleichheit, größer als, kleiner als usw. prüfen.
Hier ist ein Java-Code, der den Wert einer numerischen Variablen (mit dem Namen iVar) überprüft und je nach dem, ob der Wert von iVar null, negativ oder positiv ist, verschiedene Codepfade bereitstellt:
if (iVar == 0) // Variable ist null else Wenn (iVar> 0) // Variable ist eine positive Zahl else // Variable ist eine negative Zahl
Lassen Sie uns nun ein bestimmtes Java-Feature betrachten, das Sie auch in bedingten Anweisungen verwenden können. Da Java eine vollständig objektorientierte Sprache ist, können Sie auch testen, ob ein Objekt über einen bestimmten Typ (eine Instanz einer bestimmten Klasse) bedingt ist Beispielvon
Stichwort. Das Beispielvon
Schlüsselwort ist ein boolescher Operator, der wie ein regulärer mathematischer boolescher Bedingungsoperator verwendet wird, um ein wahres oder falsches Ergebnis zu generieren.
Schauen wir uns ein kurzes Beispiel an. Nehmen wir an, wir haben eine übergeordnete Klasse namens Fish, die aus zwei abgeleiteten Unterklassen besteht: SaltwaterFish und FreshwaterFish. Wir könnten die verwenden Beispielvon
Schlüsselwort zum Testen, ob ein Objekt eine Instanz einer bestimmten Klasse (oder Unterklasse) anhand des Namens ist:
SaltwaterFish Nemo = neuer SaltwaterFish (); if (nemo instanceof Fish) // Wir haben eine Art von Fisch // könnte ein Fisch (Elternklasse) oder eine Unterklasse sein, wie // SaltwaterFish oder FreshwaterFish. if (Nemo-Instanz von Salzwasserfischen) // Nemo ist ein Salzwasserfisch!
Also, wenn es um Android-Entwicklung geht, wann ist das Beispielvon
Funktion nützlich? Für Anfänger sind die Android SDK-Klassen in typischer Objektorientierung organisiert: hierarchisch. Beispielsweise werden die Klassen wie Button, TextView und CheckBox, die verschiedene Typen von Benutzeroberflächen-Steuerelementen darstellen, alle von derselben übergeordneten Klasse abgeleitet: View. Wenn Sie also eine Methode erstellen möchten, die einen View-Parameter verwendet hat, sich aber je nach Steuerelementart unterschiedlich verhalten hat, können Sie das verwenden Beispielvon
Mechanismus, um den eingehenden Parameter zu überprüfen und genau zu bestimmen, welche Art von View-Control übergeben wurde.
Die folgende Methode verwendet beispielsweise einen View-Parameter, mit dem Sie beliebige Ansichtstypen übergeben können, wobei TextView-Steuerelemente jedoch speziell für die spezielle Verarbeitung hervorgehoben werden:
void checkforTextView (View v) if (v Instanz von TextView) // Dies ist ein TextView-Steuerelement else // Dies ist kein TextView-Steuerelement
In diesem Beispiel können Sie fortfahren, indem Sie eine Methode aufrufen, die nur für ein TextView-Objekt gültig ist, und nicht für das generische View-Objekt. In diesem Fall würden wir den View-Parameter wahrscheinlich vor dem Aufruf in einen TextView umwandeln. Wenn wir jedoch einen Aufruf machen wollten, der in allen View-Objekten verfügbar ist, sich aber in TextView-Objekten anders verhält, müssen Sie dies nicht testen. Java führt den Aufruf der entsprechenden Version der für TextView spezifischen Methode aus. Dies ist eines der großen Merkmale der objektorientierten Programmierung: Die am besten geeignete Version einer bestimmten Methode wird aufgerufen.
In dieser kurzen Lektion haben Sie gelernt, wie Sie die Beispielvon
Java-Schlüsselwort, um den Typ eines Objekts zur Laufzeit zu überprüfen und bedingte Codepfade basierend auf dem Ergebnis bereitzustellen. Dies ist eine praktische Java-Funktion, auf die Android-Entwickler häufig angewiesen sind, da das Android-SDK hierarchisch organisiert ist.
Die mobilen Entwickler Lauren Darcey und Shane Conder haben mehrere Bücher zur Android-Entwicklung mitgeschrieben: ein ausführliches Programmierbuch mit dem Titel Android Wireless-Anwendungsentwicklung und Sams TeachYourself Entwicklung von Android-Anwendungen in 24 Stunden. Wenn sie nicht schreiben, verbringen sie ihre Zeit damit, mobile Software in ihrem Unternehmen zu entwickeln und Beratungsdienste anzubieten. Sie können sie per E-Mail an [email protected], über ihren Blog unter androidbook.blogspot.com und über Twitter @androidwireless erreichen.