Gyakorlati alapok I.

Ami a változót (és a többieket) változatlanná teszi: a final

 

A final elsődleges jelentése: végső, lásd final countdown (végső visszaszámlálás):

www.informatika-programozas.hu - Ezt most meg kell tanulni!

 

Programozás-technikai funkciója pontosan az, amire neve is utal: a dolog a final módosítószó használatával megváltoztathatlanná (továbbiakban: konstanssá) válik.

 

Tipikusan ilyenek lehetnek a változóértékek (variables), amelyek fő feladata mindenféle adat átmeneti vagy állandó tárolása, folyamatos "cipelése". Továbblépve: vannak olyan változóértékek, amelyeket egyenesen tilos megváltoztatnunk, hiszen éppen a fő matematikai referenciát jelentik. Ilyenek a természeti állandók, talán a legismertebb közülük a PI (3.14), amelyet felhasználása esetén final módosítással kell levédenünk, nehogy bármi is megváltoztassa:

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

import java.math.*;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
    final double PI = 3.1415926535;
    Scanner in = new Scanner(System.in);
    System.out.println("Kérem, hogy adja meg a sugárhosszt (r)!");
    String sugar = in.nextLine();
    double r = Double.parseDouble(sugar);

    double kerulet = 2 * r * PI;
    double terulet = Math.pow(r, 2) * PI;
    System.out.println(r + " egységnyi sugarú kör kerülete: " + kerulet);
    System.out.println(r + " egységnyi sugarú kör területe: " + terulet);
    }
}

 

Végeredmény:

Kérem, hogy adja meg a sugárhosszt (r)!
5.8
A 5.8 egységnyi sugarú kör kerülete: 36.4424747806
A 5.8 egységnyi sugarú kör területe: 105.68317686374

 

A kódban jól látható, hogy bár a PI konstans értékével jól tudunk együtt dolgozni, sőt: mérnöki számítások alapját képezi, megváltoztatni mégsem vagyunk képesek, azaz a PI konstans változót semmilyen módon nem tudjuk más adattal felülírni. Minden ilyen irányú kísérlet hibaüzenetet és futási hibát okoz.

 

www.informatika-programozas.hu - Ezt most meg kell tanulni!

 

A final tehát archiválja, megőrzi a benne tárolt bármilyen értéket. Másképpen fogalmazva: a final a benne tárolt értéket csak egyszer veszi fel. Egyúttal jelzem: fontos névadási konvenció, hogy a konstans értékek változóit nagy betűkkel illessük, például PI - pi helyett.

 

Ebben a fejezetben kell megemlítenünk -bár az alábbi fogalmakkal még sokáig nem fogunk foglalkozni-, hogy a final nemcsak változók, hanem metódusok és osztályok esetében is használható: