- Zmienna końcowa
- Metoda ostateczna
- Ostatnia klasa
- Czy metoda final jest dziedziczona?
- Pusta zmienna końcowa
- Statyczna pusta zmienna końcowa
- Ostateczny parametr
- Czy możesz zadeklarować ostatecznego konstruktora
The ostatnie słowo kluczowe w Javie służy do ograniczania użytkownika. Słowo kluczowe Java final może być używane w wielu kontekstach. Finał może być:
- zmienny
- metoda
- klasa
Słowo kluczowe final można zastosować do zmiennych, zmienną końcową, która nie ma wartości, nazywa się pustą zmienną końcową lub niezainicjowaną zmienną końcową. Można go zainicjować tylko w konstruktorze. Pusta zmienna końcowa może być również statyczna i zostanie zainicjowana tylko w bloku statycznym. Będziemy się ich szczegółowo uczyć. Najpierw nauczmy się podstaw słowa kluczowego final.
jak zdobyć gołębia łownego na Androida
1) Zmienna końcowa Java
Jeśli uznasz jakąkolwiek zmienną za ostateczną, nie będziesz mógł zmienić wartości zmiennej końcowej (będzie stała).
Przykład zmiennej końcowej
Istnieje ostateczne ograniczenie prędkości zmiennej. Zamierzamy zmienić wartość tej zmiennej, ale nie można jej zmienić, ponieważ ostatecznej zmiennej raz przypisanej wartości nigdy nie można zmienić.
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 classPrzetestuj teraz
Output:Compile Time Error
2) Ostateczna metoda Java
Jeśli jakakolwiek metoda zostanie uznana za ostateczną, nie można jej zastąpić.
Przykład metody końcowej
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(); } }Przetestuj teraz
Output:Compile Time Error
3) Ostatnia klasa Java
Jeśli uznasz jakąś klasę za ostateczną, nie będziesz mógł jej przedłużyć.
Przykład ostatniej klasy
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(); } }Przetestuj teraz
Output:Compile Time Error
P) Czy metoda finalna jest dziedziczona?
Odp.) Tak, metoda final jest dziedziczona, ale nie można jej zastąpić. Na przykład:
class Bike{ final void run(){System.out.println('running...');} } class Honda2 extends Bike{ public static void main(String args[]){ new Honda2().run(); } }Przetestuj teraz
Output:running...
P) Co to jest pusta lub niezainicjowana zmienna końcowa?
Zmienna końcowa, która nie została zainicjowana w momencie deklaracji, nazywana jest pustą zmienną końcową.
Jeśli chcesz utworzyć zmienną, która jest inicjowana w momencie tworzenia obiektu i po zainicjowaniu nie może zostać zmieniona, jest to przydatne. Na przykład numer PAN CARD pracownika.
Można go zainicjować tylko w konstruktorze.
obiekt Java
Przykład pustej zmiennej końcowej
class Student{ int id; String name; final String PAN_CARD_NUMBER; ... }
Que) Czy możemy zainicjować pustą zmienną końcową?
Tak, ale tylko w konstruktorze. Na przykład:
class Bike10{ final int speedlimit;//blank final variable Bike10(){ speedlimit=70; System.out.println(speedlimit); } public static void main(String args[]){ new Bike10(); } }Przetestuj teraz
Output: 70
statyczna pusta zmienna końcowa
Statyczna zmienna końcowa, która nie jest inicjowana w momencie deklaracji, nazywana jest statyczną pustą zmienną końcową. Można go zainicjować tylko w bloku statycznym.
Przykład statycznej pustej zmiennej końcowej
class A{ static final int data;//static blank final variable static{ data=50;} public static void main(String args[]){ System.out.println(A.data); } }
P) Jaki jest parametr końcowy?
Jeśli zadeklarujesz dowolny parametr jako ostateczny, nie będziesz mógł zmienić jego wartości.
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); } }Przetestuj teraz
Output: Compile Time Error
P) Czy możemy ogłosić konstruktora jako ostatecznego?
Nie, ponieważ konstruktor nigdy nie jest dziedziczony.