Закрепляем паттерн Singleton

  • 16
  • Недоступна
Разберёмся с паттерном Singleton на примере светила и планет солнечной системы. Для начала займитесь поиском и найдите где-нибудь в интернете пример "ленивой" реализации Singleton и создайте по образу и подобию три Singleton-класса: Sun, Moon и Earth. Затем реализуйите в них интерфейс Planet. И проделайте ещё парочку операций.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (378)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Даниил
Уровень 17
29 ноября, 14:11
В общем то задача не сложная. Но первая попытка ушла на то что бы INSTANCE переименовать в instance, иначе не пропускает. Остальные попытки ушли на то что, валидатор отказывается принимать switch case
Artur Kupchenko
Уровень 24
25 ноября, 06:10
В правильном решении задействован Double Checked Locking & volatile. Но и через Synchronized Accessor валидатор все принял. Только с 5 попытки. То неправильно переменную назову. То не мог понять что за переменная thePlanet. Но потом увидел что она уже создана и просто через if else присвоил ей значение.
Julia
Уровень 27
22 ноября, 18:13
Мне очень помогло это видео по Singelton.
zimbaby
Уровень 27
13 ноября, 15:32
Кто-нибудь может объяснить зачем в правильном решении синхронизировать потоки и использовать ключевое слово volatile?
Ivan_sl13
Уровень 28
20 ноября, 16:20
Это намек что бы ты почитал про многопоточность, кстати они применили не lazy initialization, как в условиях, а Synchronized Accessor + запретили другим потокам обращаться к переменной с помощью слова volatile.
Vitek
Уровень 27
12 ноября, 20:43
Перед решением почитайте сначала комментарии. Все получилось с первого раза!
Анатолий
Уровень 17
3 ноября, 17:03
Найти пример паттерна Singleton с ленивой реализацией (lazy initialization). Капец в примере инстанс написан капсом, тупо копируешь вставляешь переделываешь под свой класс и валидатор не пускает потому что инстанс надо писать МАЛЕНЬКИМИ буквами. Капец, а так с первого раза было бы(
Luerox
Уровень 30
29 октября, 18:46
Все время в этих задачах неправильно называю переменные... А еще валидатор принимает не все реализации ленивой инициализации Singlеton. Вдруг кто-то тоже не сразу прочитает требования)
Maria
Уровень 35
28 октября, 12:37
я сделала) надрочилась на теорию. оооооо и сделала гугление !!!!!
Tomhetted
Уровень 28
27 октября, 19:09
Через иф-элс валидатор ругался, пустил когда тоже самое через свитч написал
Voffka
Уровень 38
26 октября, 13:12
SUN - это НЕ ПЛАНЕТА!!! Ну почему вы гоните беса?! Солнце - ЗВЕЗДА. Планета != Звезда. Увлекаюсь космологией, потому вызывает пригорание пердака