Передача ссылки на этот экземпляр класса в его конструкторе на другие экземпляры классаJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Передача ссылки на этот экземпляр класса в его конструкторе на другие экземпляры класса

Сообщение Anonymous »

В Java я могу написать что -то вроде этого: < /p>

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

public class Brother {
private final Parent parent;

public Brother(Parent parent) {
this.parent = parent;
}

public void annoySister() {
parent.getSister().annoy();
}

}

public class Sister {
private final Parent;

public Sister(Parent parent) {
this.parent = parent;
}

public void annoy() {
System.out.println("I am annoyed");
}

public void parentsName() {
parent.getName();
}
}

public class Parent {
private final Brother brother;
private final Sister sister;
private final String name;

public Parent() {
this.name = "Johnny";
this.brother = new Brother(this);
this.sister = new Sister(this);
}
// getters
}
< /code>
Таким образом, все объекты, созданные в классе родителей, доступны друг для друга. Например, в приведенном выше коде брат может получить доступ к сестринским методам и наоборот в дополнение к методам, предоставленным родительским классом (по существу, доступ к своему состоянию). < /P>
public class Main {

public static void main(String args) {
// somehow this seems to be like a container for all objects; ApplicationContext?
Parent parentInstance = new Parent();

parentInstance.getBrother().annoySister();
parentInstance.getSister().parentsName();
}
}
< /code>
q. [b] Как это 
можно передавать в другие классы, когда родитель создается по мере выполнения его конструктора? [/b]

Подробнее здесь: https://stackoverflow.com/questions/797 ... lass-insta
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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