Diferența dintre statică și finală în Java

Diferența cheie - statică vs final în Java
 

Fiecare limbaj de programare are o sintaxă specifică. Programatorul ar trebui să urmeze aceste sintaxe atunci când scrie programe. Cuvintele cheie ale limbajelor de programare au semnificații specifice în funcție de sarcini. Acestea sunt furnizate de limbajul de programare și nu pot fi folosite pentru variabile, metode, clase definite de utilizator, etc. Staticul și ultimul sunt două cuvinte cheie în Java. Acest articol discută diferența dintre statică și finală în Java. diferența cheie între statică și finală în Java este asta static este folosit pentru a defini elementul de clasă care poate fi utilizat independent de orice obiect al clasei, în timp ce definiția este utilizată pentru a declara o variabilă constantă sau o metodă care nu poate fi înlocuită sau o clasă care nu poate fi moștenită.

CUPRINS

1. Prezentare generală și diferență cheie
2. Ce este static în Java
3. Ce este ultimul în Java
4. Asemănări între statică și finală în Java
5. Comparație comparativă - statică vs. finală în Java în formă tabulară
6. rezumat

Ce este static în Java?

O clasă constă din membri de date (atribute) și metode. Pentru a apela metodele, ar trebui să existe un obiect al acelei clase specifice. Atunci când o metodă este declarată statică, nu este necesar să creați un obiect pentru a apela acea metodă. Metoda poate fi apelată folosind numele clasei. Consultați programul de mai jos.

Figura 01: Programul Java cu variabile statice și metoda statică

Conform programului de mai sus, clasa A conține metoda numărului variabil și a metodei de afișare. Ambii sunt membri statici. Prin urmare, nu este necesar să creați un obiect pentru a accesa metoda variabilei și a metodei de afișare a numerelor. Programatorul poate scrie direct numele clasei pentru a imprima numărul și pentru a apela afișarea metodei. Deci, nu este nevoie să instanțiați un obiect. Dacă metoda numărului variabil și a metodei de afișare este non-statică, atunci ar trebui să existe un obiect de tip A.

Figura 02: Utilizarea blocului static

Programul de mai sus conține blocul static și metoda principală. Blocul static este apelat atunci când clasa este încărcată. Prin urmare, instrucțiunea din blocul static se execută înainte de instrucțiunea din blocul principal. Dacă există multe blocuri statice, acestea vor fi executate în ordine.

Ce este ultimul în Java?

În program, pot exista variabile de diferite tipuri. Dacă există o variabilă ca int x = 1; mai târziu în program, valoarea variabilă poate fi modificată la o altă valoare. O variabilă care este declarată finală și inițializată cu o valoare nu poate fi modificată ulterior în program.

Figura 03: Program cu variabilă finală și moștenire

Conform programului de mai sus, x este o variabilă finală. Se atribuie o valoare 5. Nu poate fi schimbată o altă valoare deoarece este declarată finală. Java suportă programarea orientată pe obiecte (OOP). Un pilon al OOP este un polimorfism. Un tip de polimorfism este imperativ. Clasa A are metoda de afișare. Clasa B extinde clasa A și are propria metodă de afișare. Când creați un obiect de tip B și apelați metoda de afișare, va fi imprimat "B" ca ieșire. Metoda de afișare a clasei A este suprascrisă de metoda de afișare a clasei B.

Dacă programatorul ce să evite suprimarea unei metode, atunci poate folosi cuvântul cheie final pentru acea metodă. Dacă metoda de afișare din clasa A este finală, metoda de afișare în B va da o eroare deoarece această metodă nu poate fi înlocuită.

Figura 04: Cuvânt cheie final în Metodă

Un alt pilon al POR este moștenirea. Ajută la reutilizarea codului deja existent. Noua clasă se poate extinde de la clasa existentă și poate utiliza datele și metodele din clasa existentă. Dacă este necesară încetarea moștenirii unei clase, programatorul poate folosi cuvântul cheie "finală". Consultați programul de mai jos.

Figura 05: Cuvânt cheie final din clasă

Conform programului de mai sus, clasa A este declarată finală. Atunci când clasa B extinde A, aceasta dă o eroare deoarece clasa A este declarată finală. Nu poate fi moștenit de alte clase.

Care este asemănarea dintre statică și finală în Java?

  • Ambele statice și finale sunt cuvintele cheie în Java.

Care este diferența dintre statică și finală în Java?

statică vs. finală în Java

Cuvântul static indică faptul că o variabilă sau o metodă poate fi accesată fără a necesita o instanțiere a clasei din care face parte. Cuvântul cheie final indică o entitate care poate fi atribuită o singură dată.
 variabile
Variabilele statice pot fi reinitializate. Variabilele finale nu pot fi reinitializate.
metode
Poate fi apelat prin alte metode statice și accesând doar membrii statici ai clasei. Metodele finale nu pot fi suprasolicitate.
Clasă
Obiectul de clasă statică nu poate fi creat. Cuprinde numai membrii statici. Clasa finală nu poate fi moștenită de alte clase.
bloc
Cuvântul cheie static poate fi utilizat într-un bloc. Cuvântul cheie final nu este utilizat cu un bloc.

rezumat - statică vs final în Java

Acest articol a discutat două cuvinte cheie în Java, cum ar fi statice și finale. Diferența dintre statică și finală în Java este aceea că staticul este folosit pentru a defini membrul clasei care poate fi folosit independent de orice obiect al clasei, în timp ce definiția este utilizată pentru a declara o variabilă constantă sau o metodă care nu poate fi suprascrisă sau o clasă care nu poate să fie moștenit.

Referinţă:

1.Ce este cuvântul static în Java metoda statică și variabila statică, Învățăturile lui Telusko, 6 martie 2015. Disponibil aici  
2.7.16 Cum se utilizează blocul static în Java Tutorial, Telusko, 30 aprilie 2015. Disponibil aici
3.8.13 Cum se utilizează Cuvântul cheie final în Java Metodă, clasă și variabilă, Telusko, 26 februarie 2015. Disponibil aici