Hjem Personlig finansiering Hvordan du bruker en Java-test-erklæring med ressurser - dummies

Hvordan du bruker en Java-test-erklæring med ressurser - dummies

Video: Bring on the learning revolution! | Sir Ken Robinson 2025

Video: Bring on the learning revolution! | Sir Ken Robinson 2025
Anonim

Forestill deg et Java-program som får input fra to forskjellige filer eller fra en Skanner og en disk fil. For å sikre at du rydder opp riktig, legger du nær metallsamtaler i en endelig -klausul.

importer java. io. Fil;

importer java. io. IOException;

importer java. util. Scanner;

offentlig klasse Main {

statisk statisk tomt hoved (String args []) {

Skanner scan1 = null;

Skanner scan2 = null;

prøv {

scan1 = ny skanner (ny fil ("File1. Txt"));

scan2 = ny skanner (ny fil ("File2. Txt"));

// Gjør nyttige ting

} fange (IOException e) {

// Ups!

} til slutt {

scan1. Lukk();

scan2. Lukk();

System. ute. println ("Ferdig!");

}

}

}

I teorien utfører datamaskinen alltid scan1. lukk () og scan2. Lukk () Uansett hva som går galt under utførelsen av Prøv -klausulen. Men det er teori. I virkeligheten kan en annen programmerer (ikke selvfølgelig) endre koden ved å lukke scan1 i midten av prøve -klausulen:

prøv {

scan1 = ny skanner (ny fil ("File1. Txt"));

scan2 = ny skanner (ny fil ("File2. Txt"));

// Gjør nyttige ting, men også …

scan1. Lukk();

scan1 = null;

} fangst (IOException e) {

// Ups!

} til slutt {

scan1. Lukk();

scan2. Lukk();

System. ute. println ("Ferdig!");

}

Nå har du et reelt problem. Innenfor endelig -klausulen er verdien på scan1 null . Anropet til scan1. Lukk () mislykkes, så programmet kaster en NullPointerException og slutter å kjøre før du ringer til scan2. lukk () . I verste fall er scan2 ikke stengt, og programmet har File2. txt låst opp slik at ingen andre programmer kan bruke filen.

Når et program bruker flere ressurser (mange filer, en database og en fil, eller hva som helst), blir oppsummeringen av prøve setningene ganske kompliserte. Du kan gjøre prøve uttalelser innenfor catch klausuler og alle slags sprø kombinasjoner. Men Java har en bedre måte å løse problemet på: I Java 7 (og senere versjoner av Java) kan du opprette en test-med-ressurser-setning. Denne koden viser hvordan.

importer java. io. Fil;

importer java. io. IOException;

importer java. util. Scanner;

offentlig klasse NewMain {

offentlig statisk tomt hoved (String args []) {

prøve (Scanner scan1 = ny skanner (ny fil ("File1.txt "));

Skanner scan2 = ny skanner (ny fil (" File2. txt "))) {

// Gjør nyttige ting

} fange (IOException e) {

// Ups

}

I denne koden erklæres

scan1

og

i } System. out. println ("Done!"); } scan2 er i parentes etter ordet try . De parentesiserte deklarasjonene forteller at Java skal lukke scan1 og scan2 automatisk etter utførelsen av setningene i > Prøv -klausulen. Du kan deklarere flere ressurser i en prøve setningens parentes. Når du gjør det, lukker Java alle ressursene automatisk etter utførelse av prøve -klausulens uttalelser. Legg til catch klausuler og en endelig -klausul, hvis du vil. Du kan få tilgang til alle slags ressurser (filer, databaser, tilkoblinger til servere og andre) og ha ro i sinnet å vite at Java vil koble forbindelsene automatisk. Livet er bra.

Hvordan du bruker en Java-test-erklæring med ressurser - dummies

Redaktørens valg

Vis resultatene i forhold til et målområde i Excel-oversiktspanelet - dummies

Vis resultatene i forhold til et målområde i Excel-oversiktspanelet - dummies

Noen ganger trenger du målserier i Excel-oversikten og rapportene dine. I enkelte bedrifter er et mål ikke en verdi - det er en rekke verdier. Det vil si at målet er å holde seg innenfor et definert målområde. Tenk deg at du klarer en liten bedrift som selger esker med kjøtt. En del av jobben din er å ...

Slicer Tilpasninger for Slicers på Excel Dashboard - dummies

Slicer Tilpasninger for Slicers på Excel Dashboard - dummies

Hvis du skal bruke slicers på en Excel-dashbordet, bør du gjøre litt formatering for å få dine skiver til å passe til temaet og oppsettet på instrumentpanelet. Følgende diskusjon dekker noen formateringsjusteringer du kan gjøre til dine skiver. Størrelse og plassering av skiver En skiver oppfører seg som en standard Excel ...

Enkel statistikk i Excel Data Analyse - dummies

Enkel statistikk i Excel Data Analyse - dummies

Excel gir flere praktiske, brukervennlige verktøy for å analysere informasjon som du lagrer i et bord, inkludert noen raske og skitne statistiske verktøy. Se på følgende enkle bord. En enkel dagligvareliste. Et av de smaleste og raskeste verktøyene som Excel gir, er muligheten til enkelt å beregne summen, gjennomsnittet, antall, minimum og maksimum av ...

Redaktørens valg

Bruk fanen Filtre til å modifisere QuickBooks 2014 Rapporter - dummies

Bruk fanen Filtre til å modifisere QuickBooks 2014 Rapporter - dummies

Filtrene kategorien er trolig den mest interessante og en nyttig kategori som er levert av dialogboksen QuickBooks Modify Report. Filtre-fanen lar deg sette opp filtre som du kan bruke til å angi hvilken informasjon som oppsummeres i rapporten. For å bruke Filtrer-fanen velger du først feltet du vil ha ...

Bruk skjermfeltet til å modifisere QuickBooks 2012-rapporter - dummies

Bruk skjermfeltet til å modifisere QuickBooks 2012-rapporter - dummies

Hvis du klikker Tilpass rapport- QuickBooks viser dialogboksen Endre rapport, som du kan bruke til å tilpasse en rapport. Når du tilpasser en rapport, endrer du rapportens utseende, layout og informasjonen som den oppsummerer. Dialogboksen Endre rapport ser annerledes ut for ulike rapporttyper. Likevel, hvis du ser forbi ...

Slik bruker du QuickBooks for din hvite papir forretningsplan - dummies

Slik bruker du QuickBooks for din hvite papir forretningsplan - dummies

QuickBooks kan hjelpe deg skriv en hvit-papir forretningsplan. Folk skriver ofte en forretningsplan for hvitt papir når de vet at de trenger en strategisk plan, men ikke ønsker å ta de harde beslutningene som er nødvendige for en strategisk plan. Personen i denne konfronten skriver en lang hvit-papir forretningsplan for å camouflere den fraværende strategiske planen. ...

Redaktørens valg

Canon 60D elektronisk nivåfunksjon - dummies

Canon 60D elektronisk nivåfunksjon - dummies

Ikke hvert fotografi må være nivå med horisonten. Imidlertid lider mange typer bilder (landskap, bybilder og arkitektonisk fotografi) sterkt når kameraet er vippet. Den gammeldags løsningen for å utjevne kameraet ditt er å bruke et boble- eller åndnivå (funnet i fotobutikker) for å kontrollere kameraets justering med ...

Kamerainnstillingsdisplayet på et Canon EOS Rebel T3-serie Kamera-dummies

Kamerainnstillingsdisplayet på et Canon EOS Rebel T3-serie Kamera-dummies

På din Canon Rebel T3 eller T3i, kan du se en samling av tilleggsinnstillingsdata via kamerainnstillingsdisplayet. Denne skjermen er bare et informasjonsverktøy, men; Du kan ikke justere noen av de rapporterte innstillingene fra denne skjermen. For å vise skjermbildet Kamerainnstillinger på T3i, vis først innstillingsinnstillingene ...

Canon EOS 70D Kameraoppsett - dummies

Canon EOS 70D Kameraoppsett - dummies

Her er en oversikt over knappene, ringer og andre eksterne kontroller på Canon EOS 70D-kameraet ditt. Objektivet vist i de følgende figurene er Canon EF-S 18-135mm IS (bildestabiliseringsmodell) som selges med kameraet; Andre linser kan variere.