Ответ
Статическое поле (static field) хранится в области памяти для метаданных класса — Metaspace (или Method Area/PermGen в более старых версиях JVM).
Основные характеристики:
- Единственный экземпляр: Существует в одном экземпляре для всего класса, независимо от количества созданных объектов.
- Время жизни: Инициализируется при загрузке класса JVM и существует до его выгрузки.
- Доступ: Доступно через имя класса (
ClassName.staticField).
Пример:
public class Counter {
static int count = 0; // Хранится в Metaspace
int id; // Нестатическое поле хранится в куче с каждым объектом
}