Делает ли поле класса изменчивым
предотвращает все проблемы видимости памяти с это в параллельной ситуации? Возможно ли, что для нижнего класса поток, который получает ссылку на объект Test
, сначала видит x
как 0 (значение по умолчанию int
), а затем 10? Я думаю, что это возможно тогда и только тогда, когда Конструктор Test
выдаст эту
ссылку без завершения (неправильная публикация). Может ли кто-нибудь проверить / исправить меня?
class Test {
volatile int x = 10;
}
Второй вопрос: что, если бы это было final int x = 10;
?