Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / почему поле не может быть одновременно volatile и final / 5 сообщений из 5, страница 1 из 1
25.04.2014, 17:45
    #38626100
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
почему поле не может быть одновременно volatile и final
Пока игрался случайно заметил, что нельзя объявить поле одновременно volatile и final.

на просторах нашёл следующее:

http://stackoverflow.com/questions/9328252/why-can-an-object-member-variable-not-be-both-final-and-volatile-in-java

как я понял этот ответ, то типо нафига писать ещё и volatile, если final поле и так нельзя изменить.

Но ведь все знают, что для final поля мы просто не может перевести ссылку, а внутреннее состояние вполне себе можем изменять сколько хотим.

А volatile, как я всегда думал, покажет мне и изменения внутреннего состояние.

Вру?
...
Рейтинг: 0 / 0
25.04.2014, 17:50
    #38626113
DEVcoach
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
почему поле не может быть одновременно volatile и final
questionerВру?Врете :-) volatile влияет только непосредственно на саму ссылку, а не на то, что сидит внутри соответствующего этой ссылке объекте.
...
Рейтинг: 0 / 0
25.04.2014, 17:56
    #38626118
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
почему поле не может быть одновременно volatile и final
DEVcoach,

у нас есть volatile ссылка на объект(это поле класса). объект имеет примитивные поля(без final/volatile).
примитивные поля тоже не факт, что будуи видны другим потокам после изменения внутреннего состояния объекта ?
...
Рейтинг: 0 / 0
25.04.2014, 18:02
    #38626126
DEVcoach
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
почему поле не может быть одновременно volatile и final
Да.
...
Рейтинг: 0 / 0
25.04.2014, 18:02
    #38626127
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
почему поле не может быть одновременно volatile и final
DEVcoach,

спасибо
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / почему поле не может быть одновременно volatile и final / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]