10 Möglichkeiten, Fehler bei der Programmierung Ihrer Android App mit Java zu vermeiden

10 Möglichkeiten, Fehler beim Programmieren Ihrer Android App mit Java zu vermeiden - Dummies

Jeder macht Fehler. Es ist eine Tatsache des Lebens. Wenn Sie jedoch den Rat hier beachten, muss es nicht eine Tatsache Ihrer Java-Programmierung sein.

Großbuchstaben dorthin, wo sie hingehören

Java ist eine Groß- / Kleinschreibung, also müssen Sie sich wirklich um p s und q s kümmern - zusammen mit jedem anderen Buchstaben des Alphabets. Hier sind einige Konzepte, die Sie beachten sollten, wenn Sie Java-Programme erstellen:

  • Die Schlüsselwörter von Java sind alle vollständig klein geschrieben. Zum Beispiel kann in einer Java if -Anweisung das Wort , wenn nicht sein, wenn oder IF ist.
  • Wenn Sie Namen aus der Anwendungsprogrammierschnittstelle (API) von Android verwenden, muss der Fall der Namen mit dem übereinstimmen, was in der API angezeigt wird.
  • Die Namen, die Sie selbst bilden, müssen während des gesamten Programms auf dieselbe Weise großgeschrieben werden. Wenn Sie eine Variable myAccount deklarieren, können Sie nicht als MyAccount , myaccount oder Myaccount angeben. Wenn Sie den Variablennamen auf zwei verschiedene Arten verwenden, denkt Java, dass Sie sich auf zwei völlig verschiedene Variablen beziehen.

Ausschalten einer switch-Anweisung

Wenn Sie nicht aus einer switch -Anweisung austreten, erhalten Sie einen Durchbruch. Wenn der Wert von roll z. B. 7 ist, druckt der folgende Code alle drei Wörter - win , continue und > verlieren :

Schalter (Rolle) {

Fall 7:

Textansicht. setText ("win");

Fall 10:

textView. setText ("weiter");

Fall 12:

textView. setText ("Verlieren");

}

Werte mit doppeltem Gleichheitszeichen vergleichen

Wenn Sie zwei Werte vergleichen, verwenden Sie ein doppeltes Gleichheitszeichen. Die Zeile

if (inputNumber == randomNumber)

ist korrekt, aber die Zeile

if (inputNumber = randomNumber)

ist nicht korrekt.

Hinzufügen von Listenern zur Behandlung von Ereignissen

Sie möchten wissen, wann der Benutzer auf ein Widget klickt, wann eine Animation endet oder wann etwas anderes passiert, sodass Sie Listener erstellen:

public class MainActivity erweitert Activity

implementiert OnClickListener, AnimationListener {

...

public void onClick (Ansicht anzeigen) {

...

}

public void onAnimationEnd (Animationsanimation) {

...

} < Wenn Sie Listener erstellen, müssen Sie daran denken, die Listener zu setzen:

ImageView widget = new ImageView (this);

Widget.

setOnClickListener (dies);

...

AlphaAnimation Animation = neue AlphaAnimation (0. 0F, 1. 0F);

Animation.

setAnimationListener (dies); ...

Wenn Sie den Aufruf von

setOnClickListener vergessen, passiert nichts, wenn Sie auf das Widget klicken.Wenn Sie ein zweites Mal auf das Widget klicken, hilft es nicht weiter. Die erforderlichen Konstruktoren definieren

Wenn Sie einen Konstruktor mit Parametern definieren, wie in

public Temperatur (doppelte Zahl)

Java erstellt keinen standardmäßigen parameterlosen Konstruktor mehr für Sie. Mit anderen Worten, Sie können

nicht mehr aufrufen. Temperature roomTemp = new Temperature ();

es sei denn, Sie definieren explizit einen eigenen parameterlosen

Temperatur -Konstruktor. Fixieren von nicht-statischen Referenzen

Wenn Sie versuchen, den folgenden Code zu kompilieren, erhalten Sie eine Fehlermeldung:

Klasse WillNotWork {

String greeting = "Hallo";

static void show () {

textView. setText (Begrüßung);

}

}

Sie erhalten eine Fehlermeldung, weil die

show -Methode statisch ist, aber greeting nicht statisch ist. Bleiben Sie innerhalb von Grenzen in einem Array

Wenn Sie ein Array mit zehn Komponenten deklarieren, haben die Komponenten Indizes von 0 bis 9. Mit anderen Worten, wenn Sie

int guests [] = neuer int [10];

Sie können auf die

Gäste Array-Komponenten verweisen, indem Sie Gäste [0] , Gäste [1] usw. schreiben, bis hin zu Gäste [9] . Sie können guests [10] nicht schreiben, da das Array guests keine Komponente mit Index 10 enthält. Null-Zeiger voraussehen

A

NullPointerException kommt zustande, wenn Sie eine Methode für einen Ausdruck aufrufen, der keinen "legitimen" Wert hat. Hier ein Beispiel: public class MainActivity erweitert AppCompatActivity {

TextView textView;

@Override

geschützt void onCreate (Bundle savedInstanceState) {

super. onCreate (gespeicherterInstanzStatus);

setContentView (R. layout. Activity_main);

// Sie vergessen die Zeile findViewById.

}

public void onButtonClick (Ansicht anzeigen) {

textView. setText ("Hallo");

}

}

In Java hat eine Referenztypvariable, die nicht auf etwas verweist, den Wert

null . In diesem Beispiel lautet der Wert der textView -Variable null . Sie können die Methode

setText nicht auf dem Wert null aufrufen. Aus diesem Grund können Sie keine Methode für den Wert null aufrufen. Wenn Java versucht, textView auszuführen. setText ("Hallo") , die App stürzt ab. Der Benutzer sieht, dass eine Anwendung die Nachricht beendet hat. Wenn Sie die App mit Android Studio testen, wird NullPointerException im Bereich "Logcat" angezeigt. Um diese Art von Unheil zu vermeiden, denken Sie zweimal über jeden Methodenaufruf in Ihrem Code nach. Wenn der Ausdruck vor dem Punkt möglicherweise

null ist, fügen Sie Ihrem Programm Code zur Ausnahmebehandlung hinzu: public void onButtonClick (Ansicht anzeigen) {

try {

textView. setText ("Hallo");

} catch (NullPointerException e) {

Toast. makeText (dies, "Die App hat einen Fehler behoben.",

Toast. LENGTH_LONG). Show();

}

}

Berechtigungen verwenden

Einige Apps benötigen explizite Berechtigungen. Zum Beispiel sprechen einige Apps über das Internet mit den Servern von Twitter. Dies funktioniert nur, wenn Sie dem

AndroidManifest der App ein -Element hinzufügen.xml file: Wenn Sie vergessen haben, das

-Element zu Ihrem AndroidManifest hinzuzufügen. xml Datei kann die App nicht mit den Servern von Twitter kommunizieren. Die App schlägt fehl, ohne eine nützliche Fehlermeldung anzuzeigen. Schade! Die Aktivität nicht gefunden

Wenn Sie eine zweite Aktivität für Ihre App erstellen, müssen Sie ein neues

-Element im AndroidManifest der App hinzufügen. XML Datei. Das Element kann so einfach wie sein, aber in den meisten Fällen ist das Element etwas komplizierter.

Wenn Sie dieses

-Element nicht hinzufügen, kann Android die Klasse MySecondActivity nicht finden, obwohl MySecondAcitivity ist. Die Java -Datei befindet sich im Projektverzeichnis der App. Ihre App stürzt mit einer ActivityNotFoundException ab. Und das macht den Unterschied.