Utwórz zmienną stałą Java (słowa kluczowe statyczne / końcowe)

Stała jest zmienna którego wartość nie może się zmienić po jej przypisaniu. Jawa nie ma wbudowanej obsługi stałych, ale modyfikatory zmiennych statyczny i finał można wykorzystać do skutecznego utworzenia.

Stałe mogą sprawić, że Twój program będzie łatwiejszy do odczytania i zrozumienia przez innych. Ponadto stała jest buforowana przez JVM, a także przez aplikację, więc użycie stałej może poprawić wydajność.

Modyfikator statyczny

Pozwala to na użycie zmiennej bez uprzedniego utworzenia wystąpienia klasa; element klasy statycznej jest powiązany z samą klasą, a nie z obiektem. Wszystkie wystąpienia klasy współużytkują tę samą kopię zmiennej.

Oznacza to, że inna aplikacja lub main () może z łatwością z niego korzystać.

Na przykład klasa myClass zawiera zmienną statyczną days_in_week:

klasa publiczna myClass {
static int days_in_week = 7;
}

Ponieważ ta zmienna to statyczny, można go użyć w innym miejscu bez jawnego tworzenia obiektu myClass:

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

Ostateczny modyfikator

Ostatni modyfikator oznacza, że ​​wartość zmiennej nie może się zmienić. Po przypisaniu wartości nie można jej ponownie przypisać.

Prymitywne typy danych (tj. int, krótki, długi, bajt, char, float, double, boolean) można uczynić niezmiennymi / niezmiennymi przy użyciu końcowego modyfikatora.

Razem te modyfikatory tworzą stałą zmienną.

static final int DAYS_IN_WEEK = 7;

Pamiętaj, że zadeklarowaliśmy DAYS_IN_WEEK we wszystkich wersjach po dodaniu finał modyfikator. Jest to długoletnia praktyka wśród programistów Java do definiowania stałych zmiennych we wszystkich wielkich literach, a także do oddzielania słów podkreślnikami.

Java nie wymaga tego formatowania, ale ułatwia to każdemu, kto natychmiast czyta kod zidentyfikować stałą.

Potencjalne problemy ze stałymi zmiennymi

Ostateczne słowo kluczowe działa w Javie, ponieważ wskaźnik zmiennej do wartości nie może się zmienić. Powtórzmy to: to wskaźnik, który nie może zmienić lokalizacji, na którą wskazuje.

Nie ma gwarancji, że obiekt, do którego następuje odwołanie, pozostanie taki sam, tylko że zmienna zawsze będzie zawierała odwołanie do tego samego obiektu. Jeśli przywoływany obiekt jest zmienny (tj. Ma pola, które można zmienić), to zmienna stała może zawierać wartość inną niż pierwotnie przypisana.