РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
75 of 1163 menu

Статический вложенный класс

Статический вложенный класс - это класс, объявленный внутри другого класса с ключевым словом static. В отличие от внутреннего класса, статический вложенный класс не привязан к экземпляру внешнего класса и может создаваться независимо. Такой класс имеет доступ только к статическим членам внешнего класса. В первом параметре при объявлении указывается модификатор доступа, во втором - ключевое слово static, далее следует имя класса.

Синтаксис

class OuterClass { static class StaticNestedClass { // тело класса } }

Пример

Давайте создадим статический вложенный класс и обратимся к его полю через экземпляр:

public class Main { static class Nested { String name = "abcde"; } public static void main(String[] args) { Nested nested = new Nested(); System.out.println(nested.name); } }

Результат выполнения кода:

"abcde"

Пример

Давайте создадим статический вложенный класс с собственным статическим методом и вызовем его:

public class Main { static class Nested { static int getValue() { return 12345; } } public static void main(String[] args) { System.out.println(Nested.getValue()); } }

Результат выполнения кода:

12345

Пример

Давайте обратимся из статического вложенного класса к статическому полю внешнего класса:

public class Main { static String outer = "abcde"; static class Nested { void show() { System.out.println(outer); } } public static void main(String[] args) { Nested nested = new Nested(); nested.show(); } }

Результат выполнения кода:

"abcde"

Смотрите также

  • класс inner-class,
    который является внутренним классом
  • класс local-class,
    который объявляется внутри метода
  • класс anonymous,
    который не имеет имени
  • ключевое слово static,
    которое делает член класса статическим
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить