@UNy

Поля внутренних классов java?

public class parcel1 {
    class contest{
        private int i=1;
        int getI(){return i;}
    }

    class destination{
        private String s;
        destination(String s){
            this.s = s;
        }

        String getS() {
            return s;
        }
    }

    void info(){
        contest c = new contest();
        System.out.println(c.getI());
        System.out.println(c.i);
        destination d = new destination("hello");
        System.out.println(d.getS());
    }

    public static void main(String[] args) {
        parcel1 p = new parcel1();
        p.info();
    }
}

Почему в методе info я вижу переменную c.i если она объявлена как private?(java 8)
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
iLLuzor
@iLLuzor
Java, Kotlin, Android Developer
Потому что у класса есть доступ ко всем полям и методам вложенных классов.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы