Krasorion.ru

Упаковочные материалы

Java неизменяемый объект, преимуществам шаблона неизменяемый объект, неизменяемый объект в java, преимущества шаблона неизменяемый объект

Шаблон проектирования
Неизменяемый объект
Immutable object
Описан в Design Patterns

Нет

Неизменяемый объект (англ. Immutable object) — в объектно-ориентированном программировании объект, который не может быть изменён после своего создания.

Содержание

Виды неизменяемых объектов

Объект может быть неизменяемым как полностью, так и частично. Например, применение директивы const к какому-либо члену класса в C++ делает объект частично неизменяемым. В некоторых случаях объект считается неизменяемым с точки зрения пользователя класса, даже если изменяются его внутренние поля. Как правило, неизменяемый объект получает все внутренние значения во время инициализации, либо значения устанавливаются в несколько этапов, но до того, как объект будет использован.

Применение

Неизменяемые объекты часто используются для устранения дорогих операций копирования и сравнения, для упрощения кода и увеличения скорости исполнения. Однако неуместно делать объект неизменяемым, если в нём есть большое количество изменяемых данных.

Примером таких объектов могут служить строки в Java, C#, VB.NET и Python. Так, операции изменения строки приводят к созданию нового объекта строки и разрушению старого. Такой подход позволяет исключить манипулирование (перенос, изменение размера) большими массивами данных.

См. также

Ссылки

  • Теория и практика Java: Изменять или не изменять? (рус.)
  • Immutable objects (англ.)
  • Descriptions from Portland Pattern Repository (англ.)

Java неизменяемый объект, преимуществам шаблона неизменяемый объект, неизменяемый объект в java, преимущества шаблона неизменяемый объект.

Хлорид натрия, Ровио (значения), Аббот, Джеймс, Альфред Рубенович Тертерян, Кирбург.

© 2011–2023 krasorion.ru, Россия, Братск, ул. Ленинская 34, +7 (3953) 38-98-93