Java lopullinen avainsana (esimerkkien kanssa)

Tässä opetusohjelmassa opitaan Java-lopullisista muuttujista, menetelmistä ja luokista esimerkkien avulla.

Java-ohjelmassa finalavainsanaa käytetään merkitsemään vakioita. Sitä voidaan käyttää muuttujien, menetelmien ja luokkien kanssa.

Kun mikä tahansa yksikkö (muuttuja, menetelmä tai luokka) on ilmoitettu final, se voidaan määrittää vain kerran. Tuo on,

  • lopullista muuttujaa ei voida alustaa uudelleen toisella arvolla
  • lopullista menetelmää ei voida ohittaa
  • lopullista luokkaa ei voida pidentää

1. Java lopullinen muuttuja

Java-ohjelmassa emme voi muuttaa lopullisen muuttujan arvoa. Esimerkiksi,

 class Main ( public static void main(String() args) ( // create a final variable final int AGE = 32; // try to change the final variable AGE = 45; System.out.println("Age: " + AGE); ) ) 

Edellä olevassa ohjelmassa olemme luoneet lopullisen muuttujan nimeltä ikä. Ja olemme yrittäneet muuttaa lopullisen muuttujan arvoa.

Kun suoritamme ohjelmaa, saamme käännösvirheen, jossa on seuraava viesti.

 cannot assign a value to final variable AGE AGE = 45; 

Huomaa : On suositeltavaa käyttää isoja kirjaimia lopullisten muuttujien ilmoittamiseen Java-muodossa.

2. Java lopullinen menetelmä

Ennen kuin opit lopullisista menetelmistä ja viimeisistä luokista, varmista, että tiedät Java-perinnöstä.

Java- finalluokassa lapsiluokka ei voi ohittaa menetelmää. Esimerkiksi,

 class FinalDemo ( // create a final method public final void display() ( System.out.println("This is a final method."); ) ) class Main extends FinalDemo ( // try to override final method public final void display() ( System.out.println("The final method is overridden."); ) public static void main(String() args) ( Main obj = new Main(); obj.display(); ) ) 

Edellä olevassa esimerkissä olemme luoneet lopullisen menetelmän, joka on nimetty luokan display()sisällä FinalDemo. Täällä pääluokka perii FinalDemo-luokan.

Olemme yrittäneet ohittaa pääluokan viimeisen menetelmän. Kun suoritamme ohjelmaa, saamme käännösvirheen, jossa on seuraava viesti.

  display() in Main cannot override display() in FinalDemo public final void display() ( overridden method is final 

3. Java viimeinen luokka

Java-ohjelmassa toinen luokka ei voi periä lopullista luokkaa. Esimerkiksi,

 // create a final class final class FinalClass ( public void display() ( System.out.println("This is a final method."); ) ) // try to extend the final class class Main extends FinalClass ( public void display() ( System.out.println("The final method is overridden."); ) public static void main(String() args) ( Main obj = new Main(); obj.display(); ) ) 

Yllä olevassa esimerkissä olemme luoneet lopullisen luokan nimeltä FinalClass. Tässä olemme yrittäneet periä viimeisen luokan pääluokalta.

Kun suoritamme ohjelmaa, saamme käännösvirheen, jossa on seuraava viesti.

 cannot inherit from final FinalClass class Main extends FinalClass ( 

Mielenkiintoisia artikkeleita...