Может ли класс Java иметь представление о своем экземпляре? - PullRequest
3 голосов
/ 01 марта 2010

Есть ли способ для класса Java иметь представление о своем экземпляре?Например:

public class Foo() {

    public Foo() {
        // can I get Bar.myInteger from here somehow 
        // without passing it in to the constructor?
    }
}

public class Bar {
    private int myInteger;

    public Bar() {
        myInteger = 0;

        Foo foo = new Foo();
    }
}

Ответы [ 11 ]

0 голосов
/ 01 марта 2010

Если они находятся в одном пакете, вы можете изменить уровень доступа myInteger на защищенный и Foo может получить к нему доступ напрямую, но вам все равно нужна ссылка на Bar, если myInteger также не является статическим. Я не люблю это делать, потому что их сложнее тестировать.

Кроме того, ваши опции используют сеттеры после создания экземпляра Foo или передачи его конструктору.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...