Hur man använder en konstant i Java

En konstant är en variabel vars värde inte kan ändras när det har tilldelats. Java har inte inbyggt stöd för konstanter, utan de variabla modifierarna statisk och slutlig kan användas för att effektivt skapa en.

Konstanter kan göra ditt program lättare att läsa och förstå av andra. Dessutom cachas en konstant av både JVM och din applikation, så att använda en konstant kan förbättra prestandan. 

Statisk modifierare

Detta gör att en variabel kan användas utan att först skapa en instans av klassen; en statisk klassmedlem är associerad med klassen i stället för ett objekt. Alla klassinstanser delar samma kopia av variabeln.

Detta innebär att en annan applikation eller huvud () enkelt kan använda den.

Till exempel innehåller klass myClass en statisk variabel dagar_in_veckan:

offentligt klass myClass 
  statisk int dagar_in_veckan = 7;

Eftersom denna variabel är statisk kan den användas någon annanstans utan att uttryckligen skapa ett myClass-objekt:

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

Slutlig modifierare

Den sista modifieraren innebär att variabelns värde inte kan ändras. När värdet har tilldelats kan det inte tilldelas om. 

Primitiva datatyper (dvs int, kort, lång, byte, char, float, dubbel, boolean) kan göras oföränderliga / oföränderliga med den slutliga modifieraren.

Tillsammans skapar dessa modifierare en konstant variabel.

statisk sista int DAYS_IN_WEEK = 7;

Observera att vi förklarade DAYS_IN_WEEK i alla mössor när vi lagt till slutlig modifieringsmedel. Det är en långvarig praxis bland Java-programmerare att definiera konstantvariabler i alla kepsar, samt att skilja ord med understreck..

Java kräver inte denna formatering men det gör det lättare för alla som läser koden att omedelbart identifiera en konstant. 

Potentiella problem med konstantvariabler

Det slutliga nyckelordet fungerar i Java är att variabelns pekare till värdet inte kan ändras. Låt oss upprepa det: det är pekaren som inte kan ändra den plats den pekar till.