>>25405
>единственный способ убить объект в языках без прямого доступа к памяти — это присвоить ссылке другое значение
Да не единственный этот способ.
Допустим, есть методы
void doSomething() {
A a = new A();
// Что-то делаем.
}
void doSomethingElse(B b) {
// Что-то делаем c b.
}
Есть некий другой метод. Неважно, в том же классе или нет.
void sdf() {
doSomething(); // создалась ссылка "a"
// Ссылка "a" больше не существует.
// Мы ей не присваивали null, но это и не важно,
// ведь её больше нет.
// Ссылка zxc копируется в ссылку "b".
doSomethingElse(this.zxc);
// Ссылка "b" исчезла.
}