- Konečná proměnná
- Konečná metoda
- Závěrečná třída
- Je výsledná metoda zděděna?
- Prázdná konečná proměnná
- Statická prázdná konečná proměnná
- Konečný parametr
- Můžete deklarovat finální konstruktor
The konečné klíčové slovo v Javě se používá k omezení uživatele. Klíčové slovo java final lze použít v mnoha kontextech. Finále může být:
- variabilní
- metoda
- třída
Klíčové slovo final lze použít s proměnnými, konečná proměnná, která nemá žádnou hodnotu, se nazývá prázdná konečná proměnná nebo neinicializovaná konečná proměnná. Lze jej inicializovat pouze v konstruktoru. Prázdná finální proměnná může být také statická, která bude inicializována pouze ve statickém bloku. Budeme se o nich podrobně učit. Pojďme se nejprve naučit základy finálního klíčového slova.
středový obrázek v css
1) Finální proměnná Java
Pokud uděláte jakoukoli proměnnou jako konečnou, nemůžete změnit hodnotu konečné proměnné (bude konstantní).
Příklad konečné proměnné
Existuje konečná proměnná rychlostní limit, budeme měnit hodnotu této proměnné, ale nelze ji změnit, protože konečná proměnná, jakmile je přiřazena hodnota, již nelze změnit.
class Bike9{ final int speedlimit=90;//final variable void run(){ speedlimit=400; } public static void main(String args[]){ Bike9 obj=new Bike9(); obj.run(); } }//end of classOtestujte to hned
Output:Compile Time Error
2) Konečná metoda Java
Pokud kteroukoli metodu nastavíte jako konečnou, nemůžete ji přepsat.
Příklad konečné metody
class Bike{ final void run(){System.out.println('running');} } class Honda extends Bike{ void run(){System.out.println('running safely with 100kmph');} public static void main(String args[]){ Honda honda= new Honda(); honda.run(); } }Otestujte to hned
Output:Compile Time Error
3) Závěrečná třída Java
Pokud uděláte kteroukoli třídu jako konečnou, nemůžete ji prodloužit.
Příklad závěrečné třídy
final class Bike{} class Honda1 extends Bike{ void run(){System.out.println('running safely with 100kmph');} public static void main(String args[]){ Honda1 honda= new Honda1(); honda.run(); } }Otestujte to hned
Output:Compile Time Error
Q) Je výsledná metoda zděděna?
Ans) Ano, konečná metoda je zděděna, ale nemůžete ji přepsat. Například:
class Bike{ final void run(){System.out.println('running...');} } class Honda2 extends Bike{ public static void main(String args[]){ new Honda2().run(); } }Otestujte to hned
Output:running...
Q) Co je prázdná nebo neinicializovaná konečná proměnná?
Konečná proměnná, která není inicializována v době deklarace, se nazývá prázdná konečná proměnná.
Pokud chcete vytvořit proměnnou, která je inicializována v době vytváření objektu a po inicializaci již nelze změnit, je to užitečné. Například číslo PAN CARD zaměstnance.
Lze jej inicializovat pouze v konstruktoru.
Příklad prázdné konečné proměnné
class Student{ int id; String name; final String PAN_CARD_NUMBER; ... }
Que) Můžeme inicializovat prázdnou konečnou proměnnou?
Ano, ale pouze v konstruktoru. Například:
class Bike10{ final int speedlimit;//blank final variable Bike10(){ speedlimit=70; System.out.println(speedlimit); } public static void main(String args[]){ new Bike10(); } }Otestujte to hned
Output: 70
statická prázdná konečná proměnná
Statická konečná proměnná, která není inicializována v době deklarace, se nazývá statická prázdná konečná proměnná. Může být inicializován pouze ve statickém bloku.
konvence pojmenování java
Příklad statické prázdné konečné proměnné
class A{ static final int data;//static blank final variable static{ data=50;} public static void main(String args[]){ System.out.println(A.data); } }
Q) Co je konečný parametr?
Pokud deklarujete jakýkoli parametr jako konečný, nemůžete změnit jeho hodnotu.
class Bike11{ int cube(final int n){ n=n+2;//can't be changed as n is final n*n*n; } public static void main(String args[]){ Bike11 b=new Bike11(); b.cube(5); } }Otestujte to hned
Output: Compile Time Error
Q) Můžeme prohlásit konstruktor za konečný?
Ne, protože konstruktor se nikdy nedědí.