Интересно, будет ли реализации equals(), созданная вызовом invokedynamic при исполнении, менять порядок сравнения, чтобы сначала сравнивались примитивные типы, строки и простые объекты?
Кстати, в одном из последних докладов АШ показывал, что volatile можно убрать из объявления поля собственно одиночки, перенеся его в объявление поля supplier (расширение вашего пример). Таким образом, мы сможем избежать волатильного доступа при чтении уже созданного одиночки.
Вы правы )) я сегодня подтормаживаю иногда
P. P. S.
Попробовал написать
поймал исключение в "Идее" :D
3)
А если в массиве лежит 2 действительных значение, а 3-е —
null
, мы берём последний, передаём в конструктор и ловим НПЕ там?6) Мне кажется, что в этом примере должна быть ещё проверка на пустую строку, иначе можно IOOBE поймать:
P. S. Посмотрел статью, на которую ты ссылаешься, там написано
Как такое возможно, если в исходниках имя ява-класса не может состоять из цифр?
Я про неё узнал только что из твоего верхнего комментария )
Спасибо!
10 минут назад обновился ))
Известность — она такая, да ))
В интервью Егору ты ж вроде говорил, что живёшь рядом и всегда пешком ходишь?
Тагир рулит!
Обложка как из "Мортал Комбата" :)
Неплохо )
Не знал )) Ставлю жирный плюс!
Я так и думал ))
Может.
Интересно, будет ли реализации
equals()
, созданная вызовомinvokedynamic
при исполнении, менять порядок сравнения, чтобы сначала сравнивались примитивные типы, строки и простые объекты?Время покажет, такие вещи за год-два-пять не меняются.
Да, есть такое. Радует, что есть просто разница, но уже нет пропасти, бывшей в СССР и в "святые 90-е".
Почему половина, а не 66,6%?
Есть хороший доклад Ивана Углянского, посвящённый всем тонкостям финализации: https://www.youtube.com/watch?v=XtijbFcQxyw
Кстати, в одном из последних докладов АШ показывал, что volatile можно убрать из объявления поля собственно одиночки, перенеся его в объявление поля supplier (расширение вашего пример). Таким образом, мы сможем избежать волатильного доступа при чтении уже созданного одиночки.