У меня есть вложенный (статический) класс с полем private и методом установки для этого поля.
public class Outer{
private static class Inner{ // List node
private String fieldA;
// ...other members...
public void setA(String fieldA)
{
//.. do importent stuff before setting fieldA
this.fieldA = fieldA;
}
}
}
Теперь у нас возникла ошибка, потому что доступ к полю A осуществляется напрямую (а не методом установки setA
) классом Outer, хотя поле fieldA
является частным. Как я могу заставить разработчиков использовать метод установки вместо прямого доступа к полю?
Я прочитал связанную тему Модификаторы доступа внутри закрытого статического вложенного класса в Java, в которой говорится, что это сделано по дизайну. Но есть ли обходной путь, обеспечивающий использование метода установки внешним классом?