Назначение объектной ссылки должно быть, но я не уверен.
Спасибо.
Ответ 1
Да. Все ссылочные назначения являются атомарными в java.
Просто обратите внимание, что составной оператор, такой как String s = new String("foobar"), не является атомарным, поскольку он содержит создание объекта, а затем назначение отдельно.
Также обратите внимание, что "присваивания длинным и двойным переменным могут быть не атомарными", из JLS-17.7
Ответ 2
Да, но если вы беспокоитесь о гоночных условиях, вы должны хотя бы знать о "синхронизированных" методах/блоках.
И обратите внимание, что это не атомно, потому что он содержит две операции: