Найти тему
DEBAGanov

Java 378. Что такое внутренние классы-члены в Java?

Внутренние классы-члены (Member Inner Classes) в Java - это классы, которые определены внутри других классов и имеют доступ к нестатическим членам этого внешнего класса.

Они могут быть объявлены с модификатором доступа private, protected, public или default и иметь доступ к любому члену внешнего класса, даже если он является закрытым (private). Они также могут быть статическими или нестатическими.

Пример внутреннего класса-члена:

public class Outer {
private int x = 10;

public class Inner {
public void printX() {
System.out.println(x);
}
}
}

Здесь класс Inner является внутренним классом-членом класса Outer. Он имеет доступ к нестатическому члену x класса Outer и может вызывать его метод printX() для печати значения x.

Для создания экземпляра внутреннего класса-члена внешнего класса сначала нужно создать экземпляр внешнего класса, а затем создать экземпляр внутреннего класса, используя ссылку на экземпляр внешнего класса. Например:

Outer outer = new Outer();
Outer.Inner inner = outer.new Inner();
inner.printX(); // Выводит значение 10

Таким образом, внутренние классы-члены позволяют создавать классы, которые имеют полный доступ к нестатическим членам внешнего класса и могут использоваться для решения определенных задач, например, как помощник для определенной функциональности внешнего класса.

1606 вопрос-ответ по Java: https://github.com/DEBAGanov/interview_questions

Tелеграмм канал: https://t.me/DEBAGanov

Мое резюме: https://github.com/DEBAGanov