Malcolm, а в SE есть натив ссылки? Слышал, что на сименсе есть, а на остальных как? И как с ними работать? Как их вызывать? О, вспомил, в ранних версиях MiniCommander"а была натив ссылка на открытие Gif, там анимации можно было просматривать. Как это вызвать?
Ссылка на пост
15 ноя 2008 в 12:42
Отвечаю на второй вопрос: нет! Когда ты обнуляешь ссылочную переменную, ты теряешь ссылку на объект, но при этом сам объект как болтался где-то в heap, так и болтается. Удалением объектов занимается сборщик мусора, который запускается либо "по твоему велению" (метод System.gc()), либо автоматически. На современных SE он вызывается только если программе нужно еще heap, а он уже закончился. Удалются, разумеется, только те объекты, на которые не указывает ни одна ссылочная переменная.
К слову, на CLDC есть еще один тип ссылок, слабые, реализуется он через класс WeakReference. Сборщик мусора удаляет объекты, к которым не осталось жестких ссылок, поэтому при его запуске слабые будут установлены в null. Это сделано для экономии памяти, но они практически не используются (я их один раз использовал, кстати).