Razlika između statičkog i konačnog u Javi

Sadržaj:

Razlika između statičkog i konačnog u Javi
Razlika između statičkog i konačnog u Javi

Video: Razlika između statičkog i konačnog u Javi

Video: Razlika između statičkog i konačnog u Javi
Video: Решение задач на мезомерный и индуктивный эффекты в молекулах. Часть 2. 2024, Novembar
Anonim

Ključna razlika – statična naspram finala u Javi

Svaki programski jezik ima specifičnu sintaksu. Programer bi trebao slijediti ove sintakse kada piše programe. Ključne riječi programskih jezika imaju specifična značenja prema zadacima. Oni su obezbeđeni programskim jezikom i ne mogu se koristiti za korisnički definisane varijable, metode, klase, itd. Static i final su dve ključne reči u Javi. Ovaj članak govori o razlici između statičkog i finalnog u Javi. Ključna razlika između static i final u Javi je ta što se static koristi za definiranje člana klase koji se može koristiti neovisno o bilo kojem objektu klase dok se final koristi za deklariranje konstantne varijable ili metode koja se ne može nadjačati ili klase koja ne može se naslijediti.

Šta je statično u Javi?

Klasa se sastoji od članova podataka (atributa) i metoda. Da biste pozvali metode, trebalo bi da postoji objekat te specifične klase. Kada je metoda deklarirana kao statična, nije potrebno kreirati objekt za pozivanje te metode. Metoda se može pozvati pomoću imena klase. Pogledajte program ispod.

Razlika između statičkog i konačnog u Javi
Razlika između statičkog i konačnog u Javi

Slika 01: Java program sa statičkim varijablama i statičkim metodom

Prema gore navedenom programu, klasa A sadrži brojčanu varijablu i način prikaza. Oba su statični članovi. Stoga nije potrebno kreirati objekt za pristup brojčanoj varijabli i metodi prikaza. Programer može direktno napisati ime klase da ispiše broj i da pozove prikaz metode. Dakle, nema potrebe za instanciranjem objekta. Ako su promenljiva broja i metoda prikaza nestatične, onda bi trebalo da postoji objekat tipa A.

Razlika između statičkog i konačnog na Javi_slika 02
Razlika između statičkog i konačnog na Javi_slika 02

Slika 02: Upotreba statičkog bloka

Navedeni program sadrži statički blok i glavni metod. Statički blok se poziva kada se klasa uči. Stoga se naredba u statičkom bloku izvršava prije naredbe u glavnom bloku. Ako postoji mnogo statičkih blokova, oni će se izvršiti u nizu.

Šta je konačno u Javi?

U programu mogu postojati varijable različitih tipova. Ako postoji varijabla kao int x=1; kasnije u programu, ta vrijednost varijable se može promijeniti u neku drugu vrijednost. Varijabla koja je deklarirana kao konačna i inicijalizirana vrijednošću ne može se mijenjati kasnije u programu.

Razlika između statičkog i konačnog na Javi_slika 03
Razlika između statičkog i konačnog na Javi_slika 03

Slika 03: Program sa konačnom varijablom i nasljeđem

Prema gore navedenom programu, x je konačna varijabla. Dodijeljena mu je vrijednost 5. Ne može se promijeniti nekom drugom vrijednošću jer je deklarirana kao konačna. Java podržava objektno orijentirano programiranje (OOP). Jedan stub OOP-a je polimorfizam. Jedna vrsta polimorfizma je preovlađujuća. Klasa A ima metodu prikaza. Klasa B proširuje klasu A i ima svoj vlastiti metod prikaza. Prilikom kreiranja objekta tipa B i pozivanja metode prikaza ispisat će se “B” kao izlaz. Metoda prikaza klase A je nadjačana metodom prikaza klase B.

Ako programer šta treba da izbegne nadjačavanje metode, onda može koristiti finalnu ključnu reč za tu metodu. Ako je metoda prikaza u klasi A konačna, metoda prikaza u B će dati grešku jer se ta metoda ne može poništiti.

Razlika između statičkog i konačnog na Javi_slika 04
Razlika između statičkog i konačnog na Javi_slika 04

Slika 04: konačna ključna riječ u metodi

Još jedan stub OOP-a je nasljeđe. Pomaže ponovno korištenje već postojećeg koda. Nova klasa se može proširiti iz postojeće klase i koristiti članove podataka i metode postojeće klase. Ako je potrebno zaustaviti nasljeđivanje klase, programer može koristiti ključnu riječ 'final'. Pogledajte program ispod.

Ke3y Razlika između statičkog i konačnog u Javi
Ke3y Razlika između statičkog i konačnog u Javi

Slika 05: konačna ključna riječ u klasi

Prema gore navedenom programu, klasa A se proglašava konačnom. Kada klasa B proširi A, daje grešku jer je klasa A deklarirana kao konačna. Ne mogu ga naslijediti druge klase.

Koja je sličnost između statičkog i konačnog u Javi?

I statične i finalne su ključne riječi u Javi

Koja je razlika između statičkog i konačnog u Javi?

static vs final u Javi

Statička ključna riječ označava da se članskoj varijabli ili metodi može pristupiti bez potrebe za instancijom klase kojoj pripada. Posljednja ključna riječ označava entitet koji se može dodijeliti samo jednom.
varijable
Statičke varijable se mogu ponovo inicijalizirati. Završne varijable se ne mogu ponovo inicijalizirati.
Metode
Može se pozvati drugim statičkim metodama i pristupiti samo statičkim članovima klase. Posljednje metode se ne mogu poništiti.
Klasa
Objekat statičke klase se ne može kreirati. Sadrži samo statične članove. Posljednju klasu ne mogu naslijediti druge klase.
Blok
Statička ključna riječ se može koristiti u bloku. Posljednja ključna riječ se ne koristi sa blokom.

Sažetak – statički naspram finala u Javi

Ovaj članak govori o dvije ključne riječi u Javi kao što su static i final. Razlika između static i final u Javi je u tome što se static koristi za definiranje člana klase koji se može koristiti neovisno o bilo kojem objektu klase dok se final koristi za deklariranje konstantne varijable ili metode koja se ne može nadjačati ili klase koja ne može biti naslijeđen.

Preporučuje se: