Здравствуйте, mgu, Вы писали:
mgu>>>"readonly"?
SL>>?
SL>>Не уловил вопрос...
mgu>Ну, вместо геттеров-без-(общественных)сеттеров использовать readonly.
mgu>А если имеются ссылочные поля, то в геттерах возвращать клоны значений.
readonly — это спецификатор доступа к полю. К типу это вообще не имеет отношения. Кроме того — прелесть immutable типов в том, что их можно шарить между кем угодно бесплатно — они неизменны. А вот возврат клонов — это уже не совсем то — т.к. наблюдаемое состояние (взвращаемые ссылки) — меняются.
Вообще по хорошему для работы с immutable типами нужен язык который их понимает — иначе куча писанины без явно определенных гарантий / удобств. Под удобствами — это "структурное" сравнение значений например. И т.п.