Som navnet antyder, a konstant er en enhed i programmering, der er uforanderlig. Med andre ord den værdi, der ikke kan ændres. I dette afsnit vil vi lære om Java konstant og hvordan man erklærer en konstant i Java .
Hvad er konstant?
Konstant er en værdi, der ikke kan ændres efter at have tildelt den. Java understøtter ikke direkte konstanterne. Der er en alternativ måde at definere konstanterne i Java ved at bruge non-access modifikatorerne static og final.
Hvordan erklærer man konstant i Java?
I Java , for at erklære enhver variabel som konstant, bruger vi statisk og endelig modifikatorer. Det er også kendt som ikke-adgang modifikatorer. Ifølge Java navngivningskonvention identifikationsnavnet skal være i store bogstaver .
Statiske og endelige modifikatorer
- Formålet med at bruge den statiske modifikator er at styre hukommelsen.
- Det tillader også, at variablen er tilgængelig uden at indlæse nogen forekomst af den klasse, den er defineret i.
- Den endelige modifikator repræsenterer, at værdien af variablen ikke kan ændres. Det gør også den primitive datatype uforanderlig eller uforanderlig.
Syntaksen til at erklære en konstant er som følger:
static final datatype identifier_name=value;
For eksempel, pris er en variabel, som vi ønsker at gøre konstant.
static final double PRICE=432.78;
Hvor statisk og endelig er ikke-adgangsmodifikatorerne. Det dobbelte er datatypen og PRICE er identifikationsnavnet, hvor værdien 432.78 er tildelt.
I ovenstående redegørelse er statisk modifikator får variablen til at være tilgængelig, uden at en forekomst af dens definerende klasse indlæses og endelig modifikator gør variablen fast.
Her opstår et spørgsmål hvorfor bruger vi både statiske og endelige modifikatorer til at erklære en konstant?
Hvis vi erklærer en variabel som statisk , vil alle objekter i klassen (hvor konstant er defineret) være i stand til at få adgang til variablen og kan ændre dens værdi. For at overvinde dette problem bruger vi endelig modifikator med en statisk modifikator.
Når variablen defineret som endelig , vil de flere forekomster af den samme konstante værdi blive skabt for hvert andet objekt, hvilket ikke er ønskeligt.
Når vi bruger statisk og endelig modifikatorer sammen, forbliver variablen statisk og kan initialiseres én gang. Derfor, for at erklære en variabel som konstant, bruger vi både statiske og endelige modifikatorer. Den deler en fælles hukommelsesplacering for alle objekter i dens indeholdende klasse.
Hvorfor bruger vi konstanter?
Brugen af konstanter i programmering gør programmet let og forståeligt, som let kan forstås af andre. Det påvirker også ydeevnen, fordi en konstant variabel cachelagres af både JVM og applikationen.
Punkter at huske:
- Skriv identifikationsnavnet med store bogstaver, som vi ønsker at erklære som konstant. For eksempel, MAX=12 .
- Hvis vi bruger privat access-specificator før konstantnavnet, kan værdien af konstanten ikke ændres i den pågældende klasse.
- Hvis vi bruger offentlig adgangsspecifikation før konstantnavnet, kan værdien af konstanten ændres i programmet.
Lad os se nogle eksempler, hvor vi har brugt konstanter.
Eksempel 1: Erklæring af konstant som privat
KonstantEksempel1.java
import java.util.Scanner; public class ConstantExample1 { //declaring constant private static final double PRICE=234.90; public static void main(String[] args) { int unit; double total_bill; System.out.print('Enter the number of units you have used: '); Scanner sc=new Scanner(System.in); unit=sc.nextInt(); total_bill=PRICE*unit; System.out.println('The total amount you have to deposit is: '+total_bill); } }
Produktion:
Eksempel 2:
ConstantExample2.java
public class ConstantExample2 { private static final double PRICE=2999; public static void main(String[] args) { System.out.println('Old Price of Iron: '+PRICE); ConstantExample obj = new ConstantExample(); obj.showPrice(); } } class ConstantExample { private static final double PRICE=3599; void showPrice() { System.out.print('New Price of Iron: '+PRICE); } }
Produktion:
Eksempel 3: Erklæring af konstant som offentlig
I det følgende eksempel har vi erklæret konstant PI som offentlig. Inde i main()-metoden har vi tildelt 3,15 i konstanten PI. Derefter har vi påberåbt printValue() metoden. Når vi udfører programmet, viser det, at en fejl ikke kan tildele en værdi til den endelige variabel PI .
ConstantExample3.java
public class ConstantExample3 { //declaring PI as constant public static final double PI= 3.14; public static void main(String[] args) { printValue(); //trying to assign 3.15 in the constant PI PI = 3.15; printValue(); } void printValue() { System.out.print('The value of PI cannot be changed to ' + PI); } }
Produktion:
Brug af enumeration (Enum) som konstant
- Det er det samme som de endelige variabler.
- Det er en liste over konstanter.
- Java giver enum nøgleord for at definere opregningen.
- Den definerer en klassetype ved at lave opregning i klassen, der kan indeholde instansvariabler, metoder og konstruktører.
Eksempel på opregning
public class EnumExample { //defining the enum public enum Color {Red, Green, Blue, Purple, Black, White, Pink, Gray} public static void main(String[] args) { //traversing the enum for (Color c : Color.values()) System.out.println(c); } }
Produktion: