Hem Personliga finanser 10 Misstag att undvika i Java Programmering - dummies

10 Misstag att undvika i Java Programmering - dummies

Innehållsförteckning:

Video: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2024

Video: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2024
Anonim

Här är 10 snabba påminnelser för att undvika enkla fel när du programmerar Android-appar med Java koda. Att skriva egna Java-program blir mycket enklare och mjukare när du kör igenom denna checklista.

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

Java är ett skiftlägeskä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-uttalande kan ordet om inte vara Om eller IF.

  • När du använder namn från Java Application Programming Interface (API) måste namnen matcha vad som visas i API: n.

  • Du måste också försäkra dig om att de namn du gör upp dig aktiveras på samma sätt under hela programmet. Om du deklarerar en variabel myAccount kan du inte referera till den 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 ett omkopplingsutlåtande

Om du inte bryter ut från ett omkopplingsmeddelande får du genombrott. Om rullevärdet är 7, skriver följande kod alla tre ord - vinn, fortsätt och förlora:

switch (roll) {case 7: System. ut. println ("vinna"); fall 10: system. ut. println ("fortsätta"); fall 12: system. ut. println ("lose");}

Jämför värden med dubbelt lika tecken

När du jämför två värden med varandra 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 {… public void onClick (Visa bild) {…} public void onAnimationEnd (Animation animation) {…}

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

ImageView widget = ny ImageView (detta); widget. setOnClickListener (detta); … AlphaAnimation animation = ny AlphaAnimation (0, 0F, 1. 0F); animation. setAnimationListener (detta); …

Om du glömmer samtalet till setOnClickListener händer inget när du klickar på widgeten. Att klicka på widgeten hårdare en andra gång hjälper inte.

Definiera de nödvändiga konstruktörerna

När du definierar en konstruktör med parametrar, skapar du inte längre en standardparameterlösare för dig som i

allmän temperatur (dubbelnummer)

. Med andra ord kan du inte ringa

Temperatur roomTemp = Ny temperatur ();

om du inte uttryckligen definierar din egen parameterlösa temperaturkonstruktor.

Fixa icke-statiska referenser

Om du försöker kompilera följande kod får du ett felmeddelande:

klass WillNotWork {String greeting = "Hello"; statisk statisk tomt huvud (String args []) {System. ut. println (hälsning);}}

Du får ett felmeddelande eftersom huvudmenyn är statisk, men hälsning är inte statisk.

Håll dig inom gränserna i en matris

När du deklarerar 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 gästerens array komponenter genom att skriva gäster [0], gäster [1] och så vidare helt upp till gästerna [9]. Du kan inte skriva gäster [10], eftersom gästerna har ingen komponent med index 10.

Förutse nollpekare

Dessa exempel är inte benägna att kasta NullPointerException, men i verklig Java-programmering se det undantaget hela tiden. En NullPointerException kommer när du ringer en metod på ett uttryck som inte har ett "legitimt" värde. Här är ett billigt exempel:

public class ThrowNullPointerException {public static void main (String [] args) {String myString = null; display (myString);} statisk tomgångsvisning (String aString) {om (! aString. innehåller ("konfidentiell")) {System. ut. println (aString);}}}

Visningsmetoden skriver endast ut en rad tecken om den här strängen inte innehåller ordet konfidentiellt . Problemet är att myString-variabeln (och därmed aString-parametern) inte refererar till en sträng av något slag - inte ens till den tomma strängen (").

När datorn når samtalet till aString. innehåller, ser datorn efter en innehållsmetod som tillhör null. Men noll är ingenting. Nollvärdet har inga metoder. Så du får en stor NullPointerException, och programmet kommer att krascha runt dig.

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:

försök {om (! AString. Innehåller ("konfidentiellt")) {System. ut. println (aString);}} fånga (NullPointerException e) {System. ut. println ("Strängen är null.");}

Använd behörigheter

Vissa appar kräver uttryckliga behörigheter. Till exempel kan en app prata med Twitters servrar via Internet. Det här fungerar inte om du inte lägger till ett element i appens AndroidManifest. xml-fil:


Om du glömmer att lägga till elementet i din AndroidManifest. xml-fil 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-fil. En Android-app kan till exempel ha två aktiviteter: MainActivity och MyListActivity.

Eclipse skapar automatiskt en


Om du inte lägger till det här elementet, kan Android inte hitta klassen MyListActivity, även om MyListAcitivity. java-filen finns i appens Eclipse-projektkatalog. Din app kraschar med en ActivityNotFoundException.

Och det gör hela skillnaden.

10 Misstag att undvika i Java Programmering - dummies

Redaktörens val

Organisera e-postmarknadsföring innehåll för att matcha dina mål - dummies

Organisera e-postmarknadsföring innehåll för att matcha dina mål - dummies

När du utvecklar e-postmarknadsföring innehåll, överväga hur din publik kommer att uppleva dina avsikter. E-postmeddelanden ger större mening åt dina framtidsutsikter och kunder när innehållet du skapar och levererar är knutet samman under kända teman. När din tid är begränsad kan du bli frestad att skapa e-postinnehåll som passar ditt schema bättre ...

Nya formulärinmatningstyper i HTML5 - dummies

Nya formulärinmatningstyper i HTML5 - dummies

HTML-formulär är centrerade kring det ödmjuka men flexibla inmatningselementet . HTML5 lägger till ett antal väldigt användbara former av inmatning som hjälper till att göra HTML till ett mer modernt användargränssnitt. Även om stöd för dessa taggar inte är universellt är det säkert att börja använda dem nu. Varje webbläsare (även IE6) som inte förstår den avancerade ...

Utföra visuell designtest på en ny webbplats - dummies

Utföra visuell designtest på en ny webbplats - dummies

Det visuella designteamet för en webbplats kan skapa några olika "look and feel" -alternativ och testa dem med användare. Den här designen kallas perfekt för att passera en hemsida och en inre eller undersida av din webbplats, men de är inte 100 procent korrekta när det gäller ...

Redaktörens val

Objektiv till dina digitala SLR-dummies

Objektiv till dina digitala SLR-dummies

Zoomlinser är inte den enda typen av linser som är tillgängliga för din dSLR . Du borde veta hur de skiljer sig från de andra alternativen. Här är några av alternativen till zoomlinser i allmänhet och vanliga zoomlinser i synnerhet. Prime-objektiv En primärlins har en fast brännvidd. En lins med fast fokusering ...

Hur man skapar bra belysning för din digitala fotografi - dummies

Hur man skapar bra belysning för din digitala fotografi - dummies

Ja, du kan återskapa bra belysning om du vet vad du gör. Och ingenting kan förstöra ett foto snabbare än dålig belysning. Du kan göra många förbättringar till ett utmanande ämne helt enkelt genom att använda bra belysningsteknik. Din farbrors skalliga huvud, en tonåring som är mindre än perfekt, en hård upplyst strandplats, en droppe ...

ÖKa bildförstoring med telekonverterare - dummies

ÖKa bildförstoring med telekonverterare - dummies

En telekonverter är en sekundärlins som du placerar mellan din lins och kamerokroppen (precis som förlängningsröret). En telekonverter tar emot bilden som skapats av din lins och ger en förstorad version av den till kamerans digitala sensor. Detta kan vara ett användbart verktyg i makrofotografering men kan också vara ...

Redaktörens val

Undvik hack på sårbara trådlösa arbetsstationer - dummies

Undvik hack på sårbara trådlösa arbetsstationer - dummies

Trådlösa arbetsstationer har massor av säkerhetsproblem och kan vara inriktade på hackar - från svaga lösenord till opatchade säkerhetshål till lagring av WEP- och WPA-krypteringsnycklar lokalt. De flesta av de kända trådlösa klientens sårbarheter har blivit patchade av sina respektive leverantörer, men du vet aldrig om alla dina trådlösa system är ...

Grundläggande Mac Network Settings - dummies

Grundläggande Mac Network Settings - dummies

De flesta nätverksinställningarna på en Mac är automatiska. Om du föredrar kan du titta på och ändra standardnätverksinställningarna genom att följa dessa steg: