Делюсь опытом по Android-разработке и построению карьеры лида. Описываю свой путь Android-разработчика от кода к архитектуре, лидерству и продуктовому мышлению
📌Курс по System Design https://stepik.org/a/262641
📌Менторинг https://clck.ru/3HseCY
Post #186
311
Те, кто выбрал последний вариант ответа, молодцы. В этом вопросе есть подвох. Все дело в том, что
используя == мы сравниваем ссылки по которым эти объекты хранятся. Когда мы пишем Integer a = 127 мы создаем Integer (ссылочный тип). Получается что сравнивая a == b мы сравниваем ссылки двух объектов. Но почему-то для 127 результат будет true, а для 128 уже false. Все дело в статичном методе valueOf() который вызывается при инициализации переменной. Этот метод, как раз оптимизирует количество объектов в памяти и достаёт уже ранее созданные
объекты из памяти если они есть. Как раз это и есть пример использования паттерна Flyweight в реальном мире. Суть паттерна в переиспользовании общего состояния объекта, таким образом экономив память и не создавая похожие объекты. Такие вопросы часто задают на собеседованиях и теперь вы знаете что ответить 😉
Ну а где еще вы можете применить это в своих Android приложениях вот вот выйдет подробная статья.
используя == мы сравниваем ссылки по которым эти объекты хранятся. Когда мы пишем Integer a = 127 мы создаем Integer (ссылочный тип). Получается что сравнивая a == b мы сравниваем ссылки двух объектов. Но почему-то для 127 результат будет true, а для 128 уже false. Все дело в статичном методе valueOf() который вызывается при инициализации переменной. Этот метод, как раз оптимизирует количество объектов в памяти и достаёт уже ранее созданные
объекты из памяти если они есть. Как раз это и есть пример использования паттерна Flyweight в реальном мире. Суть паттерна в переиспользовании общего состояния объекта, таким образом экономив память и не создавая похожие объекты. Такие вопросы часто задают на собеседованиях и теперь вы знаете что ответить 😉
Ну а где еще вы можете применить это в своих Android приложениях вот вот выйдет подробная статья.
