Izveidojiet Java pastāvīgu mainīgo (statiskie / pēdējie atslēgas vārdi)

Konstante ir a mainīgs kuru vērtība nevar mainīties, kad tā ir piešķirta. Java nav iebūvēta konstanšu atbalsta, bet mainīgie modifikatori statisks un fināls var efektīvi izmantot, lai to izveidotu.

Konstantes var padarīt jūsu programmu vieglāk lasāmu un saprotamu citiem. Turklāt konstante tiek saglabāta kešatmiņā gan JVM, gan jūsu lietojumprogrammā, tāpēc konstantes izmantošana var uzlabot veiktspēju.

Statiskais pārveidotājs

Tas ļauj izmantot mainīgo, vispirms neizveidojot klase; statiskā klases locekle tiek saistīta ar pašu klasi, nevis ar objektu. Visiem klases gadījumiem ir viena un tā pati mainīgā kopija.

Tas nozīmē, ka cita lietojumprogramma vai galvenā () var to viegli izmantot.

Piemēram, klase myClass satur statisku mainīgo days_in_week:

sabiedriskās klases myClass {
statiskas int dienas_in_nedēļā = 7;
}

Tā kā šis mainīgais ir statisks, to var izmantot citur, tieši neizveidojot myClass objektu:

sabiedrības klase myOtherClass { 
statiskā tukšā galvenā (virkne [] args) {
System.out.println (myClass.days_in_week);
}
}
instagram viewer

Galīgais modifikators

Galīgais modifikators nozīmē, ka mainīgā vērtība nevar mainīties. Kad vērtība ir piešķirta, to nevar no jauna piešķirt.

Primitīvie datu veidi (t.i., int, īss, garš, baits, char, float, double, Būla) var padarīt nemaināmu / nemaināmu, izmantojot galīgo modifikatoru.

Kopā šie modifikatori rada nemainīgu mainīgo.

statiskais galīgais int DAYS_IN_WEEK = 7;

Ņemiet vērā, ka mēs DAYS_IN_WEEK deklarējām ar visiem burtiem, tiklīdz mēs pievienojām fināls modifikators. Java programmētāju vidū tā ir ilgstoša prakse definēt nemainīgus mainīgos lielos burtos, kā arī atdalīt vārdus ar pasvītrojumiem.

Java neprasa šo formatējumu, taču tas atvieglo koda lasīšanu nekavējoties identificēt konstanti.

Iespējamās problēmas ar pastāvīgiem mainīgajiem

Galīgais atslēgvārds darbojas Java Java mainīgā rādītāja rādītājā nevar mainīties. Atkārtosim to: tas ir rādītājs, kas nevar mainīt vietu, uz kuru tas norāda.

Nav garantijas, ka atsauces objekts paliks tāds pats, tikai tas, ka mainīgais vienmēr saturēs atsauci uz to pašu objektu. Ja atsauces objekts ir mainīgs (t.i., tajā ir lauki, kurus var mainīt), tad nemainīgais mainīgais var saturēt vērtību, kas nav sākotnēji piešķirtā.