10 Sätt att undvika misstag när du programmerar din Android App med Java

10 Sätt att undvika misstag när du programmerar din Android App med Java - dummies

Alla gör misstag. Det är ett faktum i livet. Men om du följer råd här behöver du inte vara ett faktum av din Java-programmering.

Lägga till stora bokstäver där de hör hemma

Java är ett språkkänsligt språk, så du måste verkligen tänka på din p s och q s - tillsammans med alla andra bokstäver av alfabetet. Här är några koncept att tänka på när du skapar Java-program:

  • Java-sökord är helt små bokstäver. I ett Java om uttalande kan ordet om inte vara Om eller IF.
  • När du använder namnen från Android Application Programming Interface (API) måste namnen matcha det som visas i API: n.
  • De namn du gör själv måste aktiveras på samma sätt under hela programmet. Om du förklarar en myAccount -variabel kan du inte referera till det som MyAccount , myaccount eller Myaccount . Om du aktiverar variabelnamnet två olika sätt anser Java att du refererar till två helt olika variabler.

Bryt ut av en omkopplingsdeklaration

Om du inte bryter ut från en switch -sats får du genombrott. Om värdet på roll är 7 , skriver följande kod alla tre ord - vinna , fortsätt och > förlora : switch (roll) {

fall 7:

textView. setText ( "win");

fall 10:

Textview. setText ( "fortsätta");

fall 12:

textvy. setText ( "förlora");

}

Jämför värden med ett dubbel lika tecken

När du jämför två värden använder du ett dubbel lika tecken. Linjen

om (inputNumber == randomNumber)

är korrekt, men raden

om (inputNumber = randomNumber)

är inte korrekt.

Lägg till lyssnare för att hantera händelser

Du vill veta när användaren klickar på en widget, när en animering slutar eller när något annat händer, så att du skapar lyssnare:

allmän klass MainActivity utökar aktivitet

redskap OnClickListener, AnimationListener

{ ...

offentligt ogiltigt påClick (View view) {

...

}

offentligt tomrum på AnimationEnd (Animationsanimering) {

...

} < När du skapar lyssnare måste du komma ihåg att ställa in lyssnare:

ImageView widget = ny ImageView (this);

widget.

setOnClickListener

(detta); ...

AlphaAnimation animation = ny AlphaAnimation (0, 0F, 1. 0F);

animation.

setAnimationListener

(detta); ... Om du glömmer samtalet till

setOnClickListener

inträffar ingenting när du klickar på widgeten.Att klicka på widgeten hårdare en andra gång hjälper inte. Definiera nödvändiga konstruktörer När du definierar en konstruktör med parametrar, som i

allmän temperatur (dubbelnummer)

Java skapar inte längre en standardparameterlösare för dig. Med andra ord kan du inte ringa

Temperatur roomTemp = Ny temperatur ();

om du inte definierar din egen parameterlösa

Temperatur

konstruktör. Åtgärda icke-statiska referenser Om du försöker kompilera följande kod får du ett felmeddelande:

klass WillNotWork {

String hälsning = "Hello";

statisk tomgångsvisning () {

textView. setText (hälsning);

}

}

Du får ett felmeddelande eftersom metoden

visa

är statisk men hälsning är inte statisk. Håller sig inom gränserna i en matris När du förklarar en matris med tio komponenter har komponenterna index 0 till 9. Med andra ord, om du förklarar

int gäster [] = new int [10];

du kan hänvisa till

gruppens komponenter genom att skriva

gäster [0] , gäster [1] och så vidare hela vägen upp till gäster [9] . Du kan inte skriva gäster [10] eftersom gästerna har ingen komponent med index 10. Förutse nollpekare A NullPointerException

uppstår när du ringer en metod på ett uttryck som inte har något "legitimt" värde. Här är ett exempel:

Public Class MainActivity utökar AppCompatActivity { TextView textView; @Override

protected void onCreate (Bundle savedInstanceState) {

super. onCreate (savedInstanceState);

setContentView (R. Layout. Activity_main);

// Du glömmer findViewById-raden.

}

Offentlig tomgång påButtonClick (View view) {

textView. setText ( "Hello");

}

}

I Java har en variabel av referenstyp som inte pekar på någonting värdet

null

. Så i detta exempel är värdet

textView -variabeln null . Du kan inte ringa metoden setText på värdet

null . För den delen kan du inte ringa någon metod på värdet null . När Java försöker att utföra textView. setText ("Hello") kraschar appen. Användaren ser ett Program har slutat meddelande. Om du testar appen med Android Studio ser du NullPointerException i Logcat-panelen. För att undvika denna typ av katastrof, tänk två gånger om något metodsamtal i din kod. Om uttrycket före pricken eventuellt kan vara null , lägg till undantagshanteringskod i ditt program:

offentligt tomrum påButtonClick (View view) { försök { textView. setText ( "Hello");

} fånga (NullPointerException e) {

Toast. makeText (detta, "Appen har återställts från ett fel.",

Toast. LENGTH_LONG). show();

}

}

Använda behörigheter

Vissa appar kräver uttryckliga behörigheter. Till exempel pratar vissa appar med Twitters servrar via Internet. Det här fungerar inte om du inte lägger till ett

-element i appens

AndroidManifest.xml

file: Om du glömmer att lägga till -elementet till din AndroidManifest. xml

-filen, kan appen inte kommunicera med Twitters servrar. Appen misslyckas utan att visa ett användbart felmeddelande. Synd! Aktiviteten hittades inte Om du skapar en andra aktivitet för din app måste du lägga till ett nytt -element i appens

AndroidManifest. xml

file. Elementet kan vara så enkelt som men i de flesta fall är elementet lite mer komplicerat. Om du inte lägger till detta -element kan Android inte hitta klassen

MySecondActivity

, även om MySecondAcitivity. java filen finns i appens projektkatalog. Din app kraschar med en ActivityNotFoundException . Och det gör hela skillnaden.