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: what is the diff between static and final in java 2024, Iulie
Anonim

Diferența cheie – static vs final în Java

Fiecare limbaj de programare are o sintaxă specifică. Programatorul ar trebui să respecte aceste sintaxe atunci când scrie programe. Cuvintele cheie ale limbajelor de programare au semnificații specifice în funcție de sarcini. Ele sunt furnizate de limbajul de programare și nu pot fi utilizate pentru variabile definite de utilizator, metode, clase etc. static și final sunt două cuvinte cheie în Java. Acest articol discută diferența dintre static și final în Java. Diferența cheie dintre static și final în Java este că static este folosit 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.

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. Când o metodă este declarată ca fiind statică, nu este necesară crearea unui 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 metoda 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ă crearea unui obiect pentru a accesa variabila numerică și metoda de afișare. Programatorul poate scrie direct numele clasei pentru a tipări numărul și pentru a apela afișajul 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 când clasa este încărcată. Prin urmare, instrucțiunea din blocul static se execută înaintea instrucțiunii din blocul principal. Dacă există multe blocuri statice, acestea se vor executa în secvență.

Ce este finalul î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 variabila finală și moștenire

Conform programului de mai sus, x este o variabilă finală. I se atribuie o valoare 5. Nu poate fi schimbată o altă valoare deoarece este declarată finală. Java acceptă programarea orientată pe obiecte (OOP). Un pilon al OOP este un polimorfism. 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. Când creați un obiect de tip B și apelați metoda de afișare va imprima „B” ca rezultat. Metoda de afișare a clasei A este înlocuită de metoda de afișare a clasei B.

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

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 Metoda

Un alt pilon al POO este moștenirea. Ajută la reutilizarea 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ă nu mai moștenească o clasă, programatorul poate folosi cuvântul cheie „final”. Consultați programul de mai jos.

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

Figura 05: cuvânt cheie final din clasa

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

static vs final în Java

Cuvântul cheie static indică faptul că o variabilă membru sau o metodă poate fi accesată fără a fi necesară o instanțiere a clasei căreia îi aparține. Cuvântul cheie final denotă o entitate care poate fi atribuită o singură dată.
variabile
Variabilele statice pot fi reinițializate. Variabilele finale nu pot fi reinițializate.
Metode
Poate fi apelat prin alte metode statice și accesează numai membrii statici ai clasei. Metodele finale nu pot fi înlocuite.
Clasa
Obiectul clasa statică nu poate fi creat. Conține numai membri statici. Clasa finală nu poate fi moștenită de alte clase.
Blocare
Cuvântul cheie static poate fi folosit într-un bloc. Cuvântul cheie final nu este folosit 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 folosit 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.

Recomandat: