Почему концепция приватности в Java связана с классами, а не с объектами? [дубликат]JAVA

Программисты JAVA общаются здесь
Anonymous
Почему концепция приватности в Java связана с классами, а не с объектами? [дубликат]

Сообщение Anonymous »

У меня есть класс Time1:

Код: Выделить всё

public class Time1 {
private int second;
}
Другой класс

Код: Выделить всё

class Test {

public static void main(String[] args) {
Time1 t = new Time1();
System.out.println(t.second);
}
}
Доступ к t.секунде из класса Test запрещен. Я понимаю это, потому что вторая переменная является частной.
Но если у меня есть метод в Time1, который принимает другой объект Time1, например:

Код: Выделить всё

public class Time1 {
private int second;
public void copy(Time1 ob) {
this.second = ob.second;
}
}
Это работает.
Почему я могу получить доступ к ob. Second? Разве это не частное? Я думал, что частный доступ связан с концепцией объекта, но, похоже, он связан с концепцией класса.
Не могли бы вы объяснить, как это не противоречит принципу сокрытия данных?< /п>

Подробнее здесь: https://stackoverflow.com/questions/783 ... ot-objects

Вернуться в «JAVA»