Статическая переменная / класс определяется в типе / классе и, как говорят, связана с типом / классом, в котором она определена, и не зависит от экземпляров типа / класса. В типе / классе есть ровно одна статическая переменная / класс, и ее лучше всего использовать для свойств, подобных константам, значение которых будет общим для любых экземпляров класса. Состояние статической переменной / переменной класса всегда существует в классе, поэтому в любой момент в классе существует только одна переменная, и ключевое слово static используется для определения этой природы переменной. Переменная static / class в лучшем случае инициализируется один раз, и это обеспечивается с помощью ключевого слова final. Последняя статическая переменная должна быть инициализирована неизменной коллекцией, как в new String () или new Integer ();
Теперь мой вопрос: как используется значение статической переменной? А как называется использование этой переменной? Например, копирует ли он это значение из класса, в котором оно содержится, или это явная ссылка на переменную в классе?
e.g
class GenericType {
private final static String commonValue = new String("foobar");
}
class AnotherGenericType {
public static void main(String[] args) {
System.out.println(GenericType.commonValue); //Displays foobar in the console.
}
}