Я не очень представляю, где тут может помочь volatile. Предположим, поле accessor я сделал volatile. Что изменится? Доступ к экземпляру целевого класса у меня осуществляется через промежуточное поле с модификатором final, а его корректное значение вроде бы гарантируется.
1. Вы полагаете, что в каком-нибудь потоке будет ссылка на не до конца проинициализированный экземпляр целевого класса?
2. Вот, что Eclipse мне пишет: Read access to enclosing field TestClass.testField is emulated by a synthetic accessor method. Change visibility of 'testField' to default. Никогда не вдавался в подробности, что это такое, апросто ставил видимость default.
Да, я уже сам пожалел, что выбрал синглтон для примера.
Вы не знаете, есть ли у данного способа устоявшееся название? Я его назвал function pointer, потому что его на C можно реализовать при помощи указателей на функции. Среди объектно-ориентированных паттернов мне почему-то ничего похожего не попадалось.
Не узнал.
2. Вот, что Eclipse мне пишет: Read access to enclosing field TestClass.testField is emulated by a synthetic accessor method. Change visibility of 'testField' to default. Никогда не вдавался в подробности, что это такое, апросто ставил видимость default.
3. Согласен.
Либо можно забить на то, что при определенных обстоятельствах вдруг родится не один экземпляр а целых два.
Вы не знаете, есть ли у данного способа устоявшееся название? Я его назвал function pointer, потому что его на C можно реализовать при помощи указателей на функции. Среди объектно-ориентированных паттернов мне почему-то ничего похожего не попадалось.