Key Difference – final vs finally vs finalize in Java
The final, finalize og finalize er vanlige termer som brukes i Java-programmering. Finalen er et nøkkelord. Den kan brukes for variabler, metoder eller klasser. Variablene som er erklært som endelige bør initialiseres bare én gang. De kan ikke endres. Siden Java er et språk som støtter objektorientert programmering, lar det lage klasser fra eksisterende klasser for å forbedre gjenbrukbarheten av kode. Noen ganger kan det være nødvendig å unngå å bruke de eksisterende klassene. Til det kan final brukes. I programmering kan det oppstå feil, og det er viktig å håndtere dem for å utføre programmet riktig. Finaliseringen er en metode som kalles av søppelsamleren. Så alle disse begrepene har forskjellige betydninger tilsvarende. Finalen er et nøkkelord som forhindrer endring av variabler, unngår metodeoverstyring og unngår utvidelse av klasser. Til slutt er en blokk i unntakshåndtering, som vil utføres enten et unntak blir kastet eller ikke. Finaliseringen er en metode som kalles av søppelsamleren før den ødelegger gjenstanden fullstendig. Det er den viktigste forskjellen til slutt og fullfør i Java.
Hva er finalen i Java?
Finalen er et nøkkelord i Java. Siden Java støtter objektorientert programmering, kan underklassene bruke variablene og metodene til en allerede eksisterende klasse. Den allerede eksisterende klassen er superklassen mens den nye klassen er underklassen. Hvis programmereren ønsker å forhindre at variabelen er tilgjengelig for andre klasser, kan han erklære variabelen som 'final'. Anta for eksempel at det er en variabel som p. Den er erklært som endelig og initialisert verdien 10.f.eks. final int p=10. Hvis p-verdien endres igjen til 20, vil det forårsake en kompileringstidsfeil. Det siste søkeordet forhindrer endring av variabelens verdi.
En klasse kan bruke en metode som allerede er i en eksisterende klasse. Anta at det er en klasse k alt B som har en metode display(). Den nye klassen er C, og den utvider klasse B. Hvis klasse C også har en metode k alt display(), blir den opprinnelige klasse B display()-metoden overstyrt. Hvis programmereren ønsker å unngå at metoden overstyrer, kan han endelig bruke nøkkelordet. f.eks. final void display(){ }. Å gjøre en metode endelig sikrer at funksjonaliteten til metoden aldri vil bli endret.
Figur 01: endelig, til slutt og ferdigstill
Det er også mulig å bruke det endelige nøkkelordet for en klasse. Den nye klassen kan ikke arve variabler og metoder for en endelig klasse. Dette er nyttig for å øke sikkerheten. Siden klassen blir forhindret fra å bruke av underklassene, er dataene beskyttet.
Hva er endelig i Java?
I programmering kan det være feil. Feil kan forårsake feil utdata eller avslutte kjøringen av et program. Det er viktig å bruke en slags mekanisme for å forhindre disse uventede resultatene. Feil kan være av to typer. De er kompilerte tidsfeil og kjøretidsfeil. Kompileringstidsfeil oppstår på grunn av syntaktiske feil. Noen vanlige kompileringsfeil mangler semikolon, manglende krøllete klammeparenteser, feilstavingsidentifikatorer, nøkkelord og ikke-oppgitte variabler. Kompilatoren vil ikke opprette.class-filen før disse feilene er rettet.
Noen ganger kan det være programmer som kompilerer riktig, men gir feil utdata. De kalles kjøretidsfeil. Noen vanlige kjøretidsfeil er å dykke et heltall med null og få tilgang til et element som er utenfor grensene til en matrise. Disse feilene vil ikke forårsake en feil på kompileringstidspunktet, men utdataene er feil. Et unntak er en tilstand som er forårsaket av en kjøretidsfeil i programmet.
Når det er en kjøretidsfeil, oppretter Java et unntaksobjekt og kaster det. Hvis unntaksobjektet ikke fanges opp riktig, vil det vise en feilmelding og vil avslutte programmet. Hvis programmereren ønsker å fortsette kjøringen av programmet med resten av koden, bør han fange opp unntaksobjektet og vise den nødvendige meldingen for korrigerende handling. Denne prosessen er kjent som unntakshåndtering.
I Java brukes try for koden som sannsynligvis vil forårsake en feil og gi et unntak. Fangsten brukes til å håndtere unntaket fra try-blokken. Det kan være flere catch-utsagn. Finally-setningene kan brukes til å håndtere et unntak som ikke fanges opp av noen av tidligere catch-setninger. Den endelige blokken vil utføres enten et unntak blir kastet eller ikke. Se det gitte eksempelet.
int p=10, q=5, r=5;
int svar;
prøve{
answer=p / (q – r);
}
catch (ArithmeticException e){
System.out.println(“Delt med null”);
}
endelig{
System.out.println(“Den endelige blokkeringen er utført”);
}
I følge eksemplet ovenfor deles verdien p på null, og det vil forårsake et unntak. Derfor fanges den opp av fangstoppgjøret. Den vil skrive ut meldingen, delt på null. Den endelige blokken vil utføres uansett om et unntak skjedde eller ikke. Etter meldingen Delt på null, vil meldingen i endelig blokken vises. Derfor er endelig en blokk brukt i unntakshåndtering.
Hva er finalize i Java?
I OOP lages objekter ved hjelp av klasser. Konstruktørmetoden kan initialisere et objekt når det er deklarert. Prosessen er kjent som initialisering. Java har også et konsept k alt avslutning. Java runtime er en automatisk søppelsamler. Den frigjør automatisk minneressursene som brukes av objektene. Søppelsamleren kaller denne metoden før den ødelegger objektet.
Noen objekter kan inneholde ikke-objektressurser. Et eksempel er en filbeskrivelse. I disse situasjonene kaller søppelsamleren finaliseringsmetoden. f.eks. fullføre(). Denne metoden utfører oppryddingsbehandling rett før objektet samles opp med søppel.
Hva er likheten mellom endelig endelig og ferdigstillelse i Java?
All final, finalize og finalize i Java brukes i Java-programmering
Hva er forskjellen mellom endelig og ferdigstillelse i Java?
final vs endelig vs finalize |
|
final | Finalen er et nøkkelord i Java som forhindrer endring av variabler, unngår metodeoverstyring og unngår utvidelse av klasser. |
endelig | Til slutt er en blokk i Java-unntakshåndtering, som vil utføres enten et unntak blir kastet eller ikke. |
finalize | Finaliseringen er en metode i Java, k alt opp av søppelsamleren før den ødelegger objektet fullstendig. |
Anvendbarhet | |
final | Finalen gjelder for variabler, metoder og klasser. |
endelig | Til slutt gjelder med en prøv-og-fang-blokker. |
finalize | Finaliseringen gjelder for objekter. |
Summary – final vs finally vs finalize in Java
The final, finalize og finalize er vanlige termer som brukes i Java-programmering. Ordene deres virker like, men de har en forskjell. Finalen er et nøkkelord som forhindrer endring av variabler, unngår metodeoverstyring og unngår å utvide klasser. Til slutt er en blokk i unntakshåndtering, som vil utføres enten et unntak blir kastet eller ikke. Finaliseringen er en metode som kalles av søppelsamleren før den ødelegger gjenstanden fullstendig. Det er forskjellen mellom final, finalize og finalize i Java-programmering.
Last ned PDF-en for final vs finally vs finalize i Java
Du kan laste ned PDF-versjonen av denne artikkelen og bruke den til offline-formål i henhold til sitat. Last ned PDF-versjonen her: Forskjellen mellom endelig endelig og fullfør i Java