Hjem Personlig finansiering Programmering Java: Når der opstår fejl - dummier

Programmering Java: Når der opstår fejl - dummier

Indholdsfortegnelse:

Video: Curso Java 09 - Bucles for anidados @JoseCodFacilito 2024

Video: Curso Java 09 - Bucles for anidados @JoseCodFacilito 2024
Anonim

Fejl i Java-programmer kan forekomme på forskellige tidspunkter. Du kan dog generelt klassificere, når der opstår en fejl i to kategorier, på kompileringstid og runtime, som beskrevet i de følgende afsnit.

Kompilere tidsfejl

Kompilatoren konverterer din applikationskode til Java byte-kode. Under denne proces tager den den læsbare kode, du skriver, og konverterer den til noget, som Java Runtime Environment (JRE) forstår.

For at udføre denne proces skal kompilatoren parse koden, hvilket betyder at den læser koden på en måde, der entydigt bestemmer præcist, hvad du vil have, at programmet skal gøre, når du vil have det til at gøre det, og hvordan du vil have opgaven udført. Hvis du bryder reglerne for at skrive entydig kode, viser kompilatoren en fejlmeddelelse. Denne besked er faktisk en slags undtagelse.

Parsing betyder at læse det input, du giver, såsom kode i læsbar form, og omdanne den til noget andet, som f.eks. Java byte-kode. En applikation kan også analysere brugerindgang. For eksempel kan en bruger skrive en streng, som din applikationskode bliver til et nummer.

Så, parsing er en handling at læse en eller anden type input, fortolke den pågældende input på en bestemt måde og derefter producere output baseret på det tolkede input. En parser genererer en fejl, når input ikke er, hvad det forventer.

Hvis brugeren f.eks. Indtaster en streng, der indeholder bogstavet C, og du forventede en streng, der indeholder et tal, som 123, vil parseren generere en undtagelse, der siger, at indtastningen er forkert.

Kompileringstidsfejl er det nemmeste at håndtere, fordi kompilatoren normalt fortæller dig præcis, hvad der er galt og hvor fejlen er opstået. Selvom oplysningerne ikke er nøjagtige, vil kompilatoren i det mindste komme dig til det rigtige område af den ødelagte kode, så du kan søge efter den fejl, den indeholder.

For at sikre, at alle forstår præcist, hvordan Java-sproget skal arbejde, opbygger udviklere en specifikation for det. Denne specifikation omfatter sprogelementerne i et specielt sprog kaldet Backus-Naur Form (BNF). Brug af BNF er en yderst præcis metode til at beskrive et sprog, så der ikke er nogen risiko for fejlfortolkning af nogen.

Du kan se en prøve af BNF for Java-sproget ved Institut for Datalogi - Daimi. Du skal ikke bekymre dig for meget om at kunne læse denne specifikation. De fleste udviklere lærer aldrig at fortolke BNF for de sprog, de bruger - det er domænet for kompilatorudviklere.

Runtime fejl

Java-kompilatoren kan ikke finde alle fejl i din kode. Hvis koden er korrekt (det vil sige, du har ikke lavet fejl ved at skrive de elementer, der skaber programmet), vil kompilatoren ikke finde fejlen.

Hvis du for eksempel initialiserer en numerisk værdi til 5 i stedet for 4, kan kompilatoren ikke finde fejlen for dig, fordi kompilatoren ikke har nogen anelse om, at du virkelig mente at skrive 4. Disse slags fejl skaber runtime fejl - de fejl, der opstår på et eller andet tidspunkt under applikationens udførelse.

Runtime fejl kan forekomme på alle mulige gange. Nogle fejl er mere tilbøjelige til at forekomme på bestemte tidspunkter. Følgende liste giver dig nogle ideer om, hvornår runtimefejl sandsynligvis vil opstå:

  • Initialisering: Når applikationen starter først - inden den præsenterer nogen form for interface til brugeren eller udfører noget nyttigt arbejde - går det igennem en initialiseringsfase. Dette er når du indstiller en variabel til den forkerte type eller forsøger at bruge en variabel, før du initialiserer det, bliver det bemærket. Mange ressourcerelaterede fejl opstår også under initialisering, fordi de fleste applikationer åbner nødvendige ressourcer i løbet af denne tid.

  • Driftstilstand: Når en applikation initialiseres, er den i driftstilstand. Hvis den har en brugergrænseflade, begynder den at interagere med brugeren. Det er det tidspunkt, hvor brugerindgang betyder mest.

    Du finder også forkert initialiserede variabler på nuværende tidspunkt, fordi brugeren (eller modtageren af ​​programudgangen, som f.eks. Systemet) vil se, at udgangen er forkert. Brugeranmodninger om ressourcer, såsom en datafil, skaber også fejl i løbet af denne tid.

  • Baggrundsbehandling: De fleste fejl i baggrundsbehandlingen skyldes miljøet (f.eks. Tab af en netværksforbindelse), manglende ressourcer (som en tabt fil), forkert initierede variabler eller fejl i, hvordan du fortalte applikationen at udføre en opgave. Nogle opgaver udføres mere generelt i baggrunden end andre er.

    Eksempelvis udskrives et dokument eller downloades ressourcer fra internettet, udføres almindeligvis i baggrunden, mens brugeren fortsætter med at arbejde med programmet i forgrunden.

  • Afslutning: Når brugeren (herunder systemkonti) fortæller programmet, er det ikke længere nødvendigt, går programmet igennem en shutdown-fase. I denne afslutningsfase lukker applikationen filer og udfører andre husholdningsgaver, der sikrer, at applikationen ikke efterlader et rod til operativsystemet.

    De mest almindelige fejl, der kan opstå i denne fase, frigiver ikke ressourcer, som din ansøgning har brugt, og ikke gemmer data til disk. Selvfølgelig kan der opstå kodningsfejl til enhver tid, og denne operation er ingen undtagelse. Du kan fortælle applikationen at lukke fem filer, når kun fire af dem rent faktisk er åbne.

JRE vil præsentere de fleste runtime fejl, det opdager til dig som undtagelser. JRE vil dog ikke fange hver fejl i din ansøgning.Du skal også se på udgangen af ​​din ansøgning for at afgøre, om output svarer til forventningerne til en given indgang.

Derudover er det vigtigt at se på de ressourcer, du bruger til at sikre, at de ikke er beskadiget på en eller anden måde. For eksempel skal du sikre dig, at alle data, du skal gemme i en fil, rent faktisk ender i filen, når din ansøgning lukkes.

Java 8 lægger større vægt på sikkerhed, hvilket betyder at du vil se flere SecurityException-tilfælde, mens du arbejder med din ansøgning.

Hvis du ser en stigning i sikkerhedsundtagelser, betyder det ikke, at din kode er defekt, eller at Java 8 er fyldt med fejl - det betyder, at Java 8 automatisk lokaliserer og fortæller dig om problemer, der kan forårsage sikkerhedsproblemer, når folk bruger din applikation.

Dokumentationen SecurityException vises på Java. net. Selvfølgelig vil du gerne vide, hvad hele hubbub handler om.

Programmering Java: Når der opstår fejl - dummier

Valg af editor

Fuld redigeringsfunktion i Photoshop Elements 10 - dummies

Fuld redigeringsfunktion i Photoshop Elements 10 - dummies

Fuld fotoredigeringsfunktion tilbyder bundter af værktøjer, som du kan bruge at redigere dine billeder, fra korrektionsværktøjer til fastsættelse af farve og klarhed til filtre, lag og meget mere for at ændre eksisterende fotos eller skabe helt originale billeder fra bunden. Men alle disse værktøjer gør også Komplet fotoredigeringstilstand kompleks. Du kan flytte ind i ...

Generelle blandingsformer i Photoshop Elements - dummies

Generelle blandingsformer i Photoshop Elements - dummies

Elementer spænder over 25 blandingstilstande. Blend modes påvirker hvordan farver interagerer mellem lag og også hvordan farver interagerer, når du anvender maling på et lag. Ikke alene gør blandingstilstande interessante effekter, men du kan også nemt anvende, redigere eller fjerne blandingsfunktioner uden at røre dine billedpixel. De forskellige blandingstilstande ...

Geometriske formindstillinger i Photoshop Elements - dummies

Geometriske formindstillinger i Photoshop Elements - dummies

Geometriindstillinger hjælpe med at definere, hvordan dine figurer ser ud. Klik på nedpegepilen i værktøjsindstillingerne i Elements for at få adgang til de geometriske indstillinger, der beskrives i det følgende. Rektangulære og afrundede rektangel geometriske indstillinger Her er geometriske indstillinger for rektangel og afrundede rektangelformer: Ubegrænset: Giver dig mulighed for at få fri tøj til at tegne en ...

Valg af editor

Sådan bygger du tabeller i HTML5 - dummies

Sådan bygger du tabeller i HTML5 - dummies

Sommetider indeholder din webside data bedst fremlagt i et bord . Du kan bruge HTML5's komplette bordsystem til at oprette tabeller som den i dette eksempel: Den grundlæggende struktur i et bord i HTML-format er rimeligt let at forstå; Tjek koden, der oprettede tabellen i eksemplet:

Hvordan man ændrer gentagne baggrunde på CSS3-steder - dummier

Hvordan man ændrer gentagne baggrunde på CSS3-steder - dummier

Der er situationer, hvor man kun vil en enkelt kopi af et baggrundsbillede på dit CSS3-websted. Det kan være, at billedet du har brugt er noget, der ikke gentager sig godt eller er stort nok til, at du virkelig ikke vil have det gentaget. Følgende procedure viser en teknik, du kan bruge til at fortælle ...

Hvordan man opbygger en webside skabelon fra scratch-dummies

Hvordan man opbygger en webside skabelon fra scratch-dummies

Standardværktøjet på tværs af digitalt agenturer og interne afdelinger til opbygning af website grafik er Adobe Photoshop. Selvom fyrværkeri er optimeret og målrettet til at producere web-grafiske kildefiler, er det bare ikke fanget, sandsynligvis på grund af den massive genoplæringsindsats ville det medføre, at hele afdelinger gør omskifteren. At oprette et nyt ...

Valg af editor

Sådan godkendes medlemmer til din LinkedIn Group - dummier

Sådan godkendes medlemmer til din LinkedIn Group - dummier

Som flere og flere mennesker finder ud af din ny LinkedIn-gruppe, og som medlemmer begynder at deltage, kan du opleve, at nogle af de personer, der har klikket på linket for at deltage, ikke er på din forhåndsgodkendte liste. Måske er de mennesker, du ikke har forstået var på LinkedIn, eller du var ikke klar over, at de var gyldige grupper ...

Hvordan man tilføjer billeder til kroppen i din LinkedIn-profil til Visual Social Marketing - dummies

Hvordan man tilføjer billeder til kroppen i din LinkedIn-profil til Visual Social Marketing - dummies

Ud over et profilbillede giver LinkedIn brugere mulighed for at forbedre de visuelle sociale markedsføringselementer i deres profiler ved at tilføje billeder til deres profilprofil. Du kan tilføje billeder til ethvert afsnit i din LinkedIn-profil. Tilføjelse af billeder til din profil kan hjælpe dig med at fortælle din historie visuelt og ...

Sådan tilføjer du en virksomhedsside til LinkedIn - dummies

Sådan tilføjer du en virksomhedsside til LinkedIn - dummies

, Når du har opfyldt kravene til oprettelse en virksomhedsside på LinkedIn, er det tid til at komme i gang ved at tilføje selskabets side til Linkedins system. For at oprette din virksomhedsside skal du blot følge disse trin: