Вложенные классы (nested classes) — это классы, объявленные внутри другого класса. Они бывают статические (static nested classes) и нестатические (inner classes).
Статические вложенные классы:
- Объявляются с модификатором
static
.
- Не имеют доступа к нестатическим членам внешнего класса напрямую (только через экземпляр внешнего класса).
- Могут содержать как статические, так и нестатические члены.
- Создаются без экземпляра внешнего класса.
java
Использование статического вложенного класса:
java
Нестатические вложенные классы (Inner Classes):
- Не объявляются с модификатором
static
.
- Имеют полный доступ ко всем членам внешнего класса, включая приватные.
- Не могут содержать статические члены (кроме констант времени компиляции).
- Требуют создания экземпляра внешнего класса для своего создания.
java
Вложенные классы (nested classes) — это классы, объявленные внутри другого класса. Они бывают статические (static nested classes) и нестатические (inner classes).
Статические вложенные классы:
- Объявляются с модификатором
static
.
- Не имеют доступа к нестатическим членам внешнего класса напрямую (только через экземпляр внешнего класса).
- Могут содержать как статические, так и нестатические члены.
- Создаются без экземпляра внешнего класса.
java
Использование статического вложенного класса:
java
Нестатические вложенные классы (Inner Classes):
- Не объявляются с модификатором
static
.
- Имеют полный доступ ко всем членам внешнего класса, включая приватные.
- Не могут содержать статические члены (кроме констант времени компиляции).
- Требуют создания экземпляра внешнего класса для своего создания.
java