Возьмите эти два класса Java:
class User {
final Inventory inventory;
User (Inventory inv) {
inventory = inv;
}
}
class Inventory {
final User owner;
Inventory (User own) {
owner = own;
}
}
Есть ли способ без использования отражения*, чтобы осуществить это ? Я на самом деле не ожидаю, что это так, но не помешает спросить.
Обновление: Поскольку в построении байт-кода есть два шага (1. выделение объекта, 2. вызов конструктора **), можно ли это (ab) использовать для этого с рукописным байт-кодом или специальным компилятором? Я говорю о выполнении шага 1 сначала для обоих объектов, затем шага 2 для обоих, используя ссылки из шага 1. Конечно, что-то подобное было бы довольно громоздким, и эта часть вопроса носит академический характер.
(* Поскольку отражение может вызвать проблемы с менеджером по безопасности)
(** Говорит о моих ограниченных знаниях)