|
Модераторы: LSD, AntonSaburov |
|
priam220 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 291 Регистрация: 4.6.2010 Репутация: 7 Всего: 8 |
Предлагаю тут рассматривать все вопросы касающиеся создания объектов, их объявлению, распределению памяти под объекты.
Для начала вот такой вопрос:
1. сколько объектов будет создано до того как будет запущен Garbage Collector 2. сколько объектов будет удалено, после выполнения строки 15 (how many objects are eligible for the Garbage Collector after executing the line 12) И как это можно проверить? Это сообщение отредактировал(а) priam220 - 25.9.2010, 16:29 |
|||
|
||||
DenWPF |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1659 Регистрация: 26.9.2009 Репутация: нет Всего: 1 |
4 каждый new создает объект.
|
|||
|
||||
priam220 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 291 Регистрация: 4.6.2010 Репутация: 7 Всего: 8 |
просто мне казалось, что существует оптимизация в java и подобные объекты будут иметь один адрес, так ли это? В любом случае хотелось бы как то удостовериться в этом... Может кто знает как?
|
|||
|
||||
DenWPF |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1659 Регистрация: 26.9.2009 Репутация: нет Всего: 1 |
ну так это другой вопрос.
я конечно ещё в этом не сильно шарю, но
нового объекта не будет, будет просто два одинаковых объекта(точнее будет два имени одного и того же объекта) |
|||
|
||||
priam220 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 291 Регистрация: 4.6.2010 Репутация: 7 Всего: 8 |
DenWPF, это да. Но есть два одинаковые объекта new A(null). Вполне возможно, что бы не тратить место, java может создать один...
|
|||
|
||||
priam220 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 291 Регистрация: 4.6.2010 Репутация: 7 Всего: 8 |
думаю, что объекта все же будет создано четыре, т.к. не нашел достоверной информации по оптимизации адресного пространства, а удален будет только один объект (в строке 11 он стоит вторым), т.к. в строке 15 от него явно отвязывается единственная ссылка. Поправьте если не прав.
|
|||
|
||||
jGorets |
|
|||
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 11.7.2010 Репутация: нет Всего: нет |
тут наверно стоит сначала понять назначения оператора new, по идеи, он создает экземпляр объекта, проще говоря, копию, с которой ты можешь работать, а запись А а - просто создает не инициализированную переменную типа А.
|
|||
|
||||
priam220 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 291 Регистрация: 4.6.2010 Репутация: 7 Всего: 8 |
jGorets, именно так и есть, к бабке ходить не надо.
|
|||
|
||||
alivesubstance |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 22.9.2008 Где: СПб Репутация: нет Всего: нет |
Задачка явна из сертификации. И что всего 2 варианта ответа?
Тут вообще-то в рантайме NPE вывалится! |
|||
|
||||
priam220 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 291 Регистрация: 4.6.2010 Репутация: 7 Всего: 8 |
задачка оттуда; ничего не вываливается, да и не должно.
Это сообщение отредактировал(а) priam220 - 26.9.2010, 11:59 |
|||
|
||||
danilka |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 15.1.2010 Репутация: нет Всего: нет |
4
2 |
|||
|
||||
LSD |
|
|||
Leprechaun Software Developer Профиль Группа: Модератор Сообщений: 15709 Регистрация: 24.3.2004 Репутация: 209 Всего: 537 |
Никакой оптимизации для new не существует. Сколько экземпляров запросили столько и будет создано. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
priam220 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 291 Регистрация: 4.6.2010 Репутация: 7 Всего: 8 |
danilka, и где второй объект, который удалит мусорщик?
|
|||
|
||||
danilka |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 15.1.2010 Репутация: нет Всего: нет |
||||
|
||||
priam220 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 291 Регистрация: 4.6.2010 Репутация: 7 Всего: 8 |
ну с a2.a понятно. А с чего ты взял что a2 будет удален? |
|||
|
||||
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |