Возможно ли получить экземпляр вызывающего объекта метода/конструктора?Извлечение экземпляра вызывающего (не класса) метода или конструктора
Этот вопрос уже опубликован, но каждый раз, когда ответы говорят о вызывающем классе (с использованием stacktrace), а не экземпляре вызывающего. Если решение существует, может быть очень удобно построить граф объектов (с общим супер-типом) и обработать родительскую дочернюю навигацию с помощью конструктора по умолчанию.
public class TestCallStack {
public static class BaseClass {
BaseClass owner;
// //ok, this is the correct way to do it
// public BaseClass(BaseClass owner) {
// this.owner = owner;
// }
public BaseClass() {
//this.owner = ???????;
}
}
public static class Parent extends BaseClass {
Child child = new Child();
}
public static class Child extends BaseClass {
}
public static void main(String[] args) {
Parent parent = new Parent();
System.out.println(parent.child.owner==parent); // must be true
}
}
I Jon, благодарю вас за это подтверждение. – fedevo