Deo zbornika Učimo Javu
Ključna reč final
u Javi
Ključna riječ final
koristi se u različitim kontekstima, označavajući da se ono na što se odnosi ne može naknadno mijenjati.
Finalne klase
Primijetit ćete da su neke klase iz Java biblioteke klasa označene kao final, npr:
public final class String
To znači da klasa ne može imati nikakvih podklasa i time se informira kompajler da može napraviti određene optimizacije koje inače ne bi mogao. To također ima nekih dobrih strana u odnosu na sigurnost i tzv. threadove (konkurentne programske tokove).
Finalne metode
Metode također mogu biti deklarirane kao final
. Finalna metoda ne može biti prekrivena (overriden) u podklasi. Npr.
public final String convertCurrency()
Finalni atributi
Atributi mogu biti final
. Finalni atributi su zapravo konstante i oni se kad su jednom postavljeni (npr. u konstruktoru), ne mogu više mijenjati.
Atributi koji su istovremeno javni, finalni i statički su prave konstante i u Javi se tako i zovu. Npr. u nekom fizikalnom programu definirali bismo tako brzinu svjetlosti:
public class Physics {
public static final double c = 2.998E8;
}
Izvor: Elliotte Rusty Harold, Java Lecture Notes, preveo Draško Budin, priredio Damjan Pavlica.