Diferența Dintre Statică și Finală în Java

Cuprins:

Diferența Dintre Statică și Finală în Java
Diferența Dintre Statică și Finală în Java

Video: Diferența Dintre Statică și Finală în Java

Video: Diferența Dintre Statică și Finală în Java
Video: 💻Ce este JAVA si ce poti face cu Limbajul de Programare Java? | Programare in Java #0 2024, Noiembrie
Anonim

Key Difference - static vs final în Java

Fiecare limbaj de programare are o sintaxă specifică. Programatorul ar trebui să urmeze aceste sintaxi 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 utilizate pentru variabilele definite de utilizator, metode, clase etc. Staticul și finalul sunt două cuvinte cheie în Java. Acest articol discută despre diferența dintre static și final în Java. Diferența cheie între static și final în Java este că static este utilizat pentru a defini membrul clasei care poate fi utilizat independent de orice obiect al clasei, în timp ce final este folosit pentru a declara o variabilă constantă sau o metodă care nu poate fi suprascrisă sau o clasă care nu poate fi moștenit.

CUPRINS

1. Prezentare generală și diferența cheie

2. Ce este static în Java

3. Ce este final în Java

4. Asemănări între static și final în Java

5. Comparare side by side - static vs final în Java în formă tabelară

6. Rezumat

Ce este static în Java?

O clasă constă din membri (atribute) și metode de date. Pentru a apela metodele, ar trebui să existe un obiect al acelei clase specifice. 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.

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

Figura 01: Program Java cu variabile statice și metodă statică

Conform programului de mai sus, clasa A conține variabila numerică și metoda de afișare. Ambii sunt membri statici. Prin urmare, nu este necesar să creați un obiect pentru a accesa variabila numerică și metoda de afișare. 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ă variabila numerică și metoda de afișare nu sunt statice, atunci ar trebui să existe un obiect de tip A.

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

Figura 02: Utilizarea blocului static

Programul de mai sus conține blocul static și metoda principală. Blocul static este apelat la încărcarea clasei. Prin urmare, instrucțiunea din blocul static se execută înainte de instrucțiunea din blocul principal. Dacă există multe blocuri statice, acestea se vor executa în ordine.

Ce este final în Java?

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

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

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

Conform programului de mai sus, x este o variabilă finală. I se atribuie o valoare 5. Nu poate fi modificată o altă valoare, deoarece este declarată finală. Java acceptă programarea orientată pe obiecte (OOP). Un pilon al POO este polimorfismul. Un tip de polimorfism este prioritar. Clasa A are metoda de afișare. Clasa B extinde clasa A și are propria metodă de afișare. La crearea unui obiect de tip B și la apelarea metodei de afișare se va imprima „B” ca ieșire. Metoda de afișare a clasei A este anulată de metoda de afișare a clasei B.

Dacă programatorul trebuie să evite cum să înlocuiască o metodă, atunci poate folosi cuvântul cheie final pentru acea metodă. Dacă metoda de afișare din clasa A este finală, metoda de afișare din B va da o eroare deoarece metoda respectivă nu poate fi anulată.

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

Figura 04: cuvânt cheie final în metodă

Un alt pilon al POO este moștenirea. Ajută la refolosirea codului deja existent. Noua clasă se poate extinde de la clasa existentă și poate utiliza membrii de date și metodele clasei existente. Dacă este necesar să se oprească moștenirea unei clase, programatorul poate folosi cuvântul cheie „final”. Consultați programul de mai jos.

Diferența Ke3y între statică și finală în Java
Diferența Ke3y între statică și finală în Java

Figura 05: cuvânt cheie final din clasă

Conform programului de mai sus, clasa A este declarată definitivă. Când clasa B extinde A, 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?

Atât static, cât și final sunt cuvinte cheie în Java

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

Difuzarea articolului din mijloc înainte de tabel

static vs final în Java

Cuvântul cheie static indică faptul că o variabilă de membru, sau o metodă, poate fi accesată fără a necesita o instanțiere a clasei căreia îi aparține. Cuvântul cheie final reprezintă 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 accesează numai membrii statici ai clasei. Metodele finale nu pot fi anulate.
Clasă
Obiectul de clasă static nu poate fi creat. Conține doar membrii statici. Clasa finală nu poate fi moștenită de alte clase.
bloc
Cuvântul cheie static poate fi folosit î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 static și final. Diferența dintre static și final în Java este că static este utilizat pentru a defini membrul clasei care poate fi utilizat independent de orice obiect al clasei, în timp ce final 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.

Recomandat: