В данной ссылке, посмотрите на варианты данных и выберите параметр, описывающий худшее с этим кодом:Получение экземпляра из метода
https://gist.github.com/d34th4ck3r/49e9ae56458d4ed0f8ae
В данной ссылке, посмотрите на варианты данных и выберите параметр, описывающий худшее с этим кодом:Получение экземпляра из метода
https://gist.github.com/d34th4ck3r/49e9ae56458d4ed0f8ae
Более одного экземпляра манго может создаются
Да: если два потока выполняет getInstance
одновременно, они оба могли видеть INSTANCE
утратившего создать новый экземпляр
манго никогда не будут созданы
да ... если вы звоните getInstance
, экземпляр будет создан, так что нет.
Конструктор является частным и не может быть назван
Нет, она может быть вызвана из класса, getInstance
значения может быть мусором, а также призыв к getInstance может возвращать данные мусора
INSTANCE
не будет собирать мусор, пока он i s достижимый - в случае статической переменной, то есть на весь срок службы JVM (*).
(*) точнее, это не будет сбор мусора, пока класс загружен. Класс может быть выгружен, если связанный с ним загрузчик классов - это сбор мусора.
+1 хороший ответ за плохой вопрос – Bohemian
Спасибо за быстрый ответ, я был смущен между сборкой мусора и несколькими экземплярами. – d34th4ck3r
Это классический Синглтон шаблон дизайна объекта
, Что худшее зависит от требований. согласно моему пониманию, если это класс более крупной программы, то манго никогда не следует делать больше одного раза.
, как assylias сказал, до тех пор, пока не будет синхронизирован ключевым слово результат может привести к 2 объектам манго (но тот угловой случай)
synchronized public static Mango getInstance()
{
if (INSTANCE == null)
{
INSTANCE = new Mango();
}
return INSTANCE;
}
Я думаю, что ответ варианта A: «Больше, чем один экземпляр манго может быть создан» Без надлежащего sychronization, два или более потоков могут называть GetInstance() одновременно и что делать манго неквалифицированного Singleton
Кстати, это выглядит как домашнее задание или интервью вопрос! :)
Как вы думаете? –
Итак, в чем вопрос? –
это вопрос интервью .. ?? Этот вопрос здесь не входит – 2013-03-14 12:16:26