Crearea unei variabile constante Java (cuvinte cheie statice / finale)

O constantă este a variabil a cărei valoare nu se poate modifica odată ce a fost atribuită. Java nu are suport integrat pentru constante, dar modificatorii de variabile static și final poate fi folosit pentru a crea eficient unul.

Constanțele pot face ca programul dvs. să fie mai ușor citit și înțeles de către alții. În plus, o constantă este memorată în cache de JVM, precum și de aplicația dvs., astfel încât utilizarea unei constante poate îmbunătăți performanța.

Modificator static

Aceasta permite utilizarea unei variabile fără a crea mai întâi o instanță a clasă; un membru al clasei statice este asociat cu clasa în sine, mai degrabă decât cu un obiect. Toate instanțele de clasă partajează aceeași copie a variabilei.

Aceasta înseamnă că o altă aplicație sau principal () o pot utiliza cu ușurință.

De exemplu, clasa myClass conține o variabilă statică days_in_week:

public class myClass {
static int days_in_week = 7;
}

Deoarece această variabilă este static, poate fi utilizat în altă parte fără a crea în mod explicit un obiect MyClass:

instagram viewer
public class myOtherClass { 
static void main (String [] args) {
System.out.println (myClass.days_in_week);
}
}

Modificator final

Modificatorul final înseamnă că valoarea variabilei nu se poate modifica. Odată ce valoarea este atribuită, nu poate fi reasignată.

Tipuri de date primitive (adică, int, scurt, lung, octet, char, float, dublu, boolean) pot fi făcute imuabile / neschimbabile folosind modificatorul final.

Împreună, acești modificatori creează o variabilă constantă.

static final int DAYS_IN_WEEK = 7;

Rețineți că am declarat DAYS_IN_WEEK în toate capacele după ce am adăugat final modificator. Este o practică de lungă durată în rândul programatorilor Java de a defini variabile constante în toate capacele, precum și de a separa cuvintele cu scăzuri.

Java nu necesită această formatare, dar face mai ușor pentru oricine citește codul imediat identifica o constantă.

Probleme potențiale cu variabile constante

Modul în care funcționează cuvântul cheie final în Java este faptul că indicatorul variabilei la valoare nu se poate modifica. Să repetăm ​​asta: este indicatorul care nu poate schimba locația către care indică.

Nu există nicio garanție că obiectul la care se face referire va rămâne același, doar că variabila va păstra întotdeauna o referință la același obiect. Dacă obiectul referit este mutabil (adică are câmpuri care pot fi modificate), atunci variabila constantă poate conține o altă valoare decât cea atribuită inițial.