Неизменяем тип

Автор: Lewis Jackson
Дата На Създаване: 8 Може 2021
Дата На Актуализиране: 1 Юли 2024
Anonim
Mutable и Immutable типы данных в python
Видео: Mutable и Immutable типы данных в python

Съдържание

Определение - Какво означава Immutable Type?

Неизменният тип, в съответствие с C #, е тип обект, чиито данни не могат да бъдат променени след създаването му. Неизменният тип задава свойството или състоянието на обекта като прочетено само защото не може да бъде променено, след като е присвоено по време на инициализация.

Неизменните типове са проектирани за ефективно управление на паметта и по-добра скорост, което ги прави подходящи за обекти с изисквания за синхронизация. Неизменяемостта осигурява по-добра четимост на кода, като прави промени в видимостта на състоянието на програмата и изолира операциите, които променят състоянието, от тези, които не го правят. Неизменяемите типове осигуряват по-висока сигурност от изменяемите типове.

Неизменяем тип се използва, когато данните трябва да се запазят, след като бъдат присвоени веднъж, но без изискване данните да бъдат променени в бъдеще. Тъй като неизменните обекти не променят състоянието си, те са по-полезни при многопоточни и многопроцесови сценарии, тъй като множество нишки могат да четат или записват обект, което може да причини състезателни условия и проблеми със синхронизацията.


Въведение в Microsoft Azure и Microsoft Cloud | В това ръководство ще научите за какво се занимава компютърните изчисления и как Microsoft Azure може да ви помогне да мигрирате и стартирате бизнеса си от облака.

Техопедия обяснява неизменния тип

Обекти от неизменен тип могат да бъдат създадени с използването на ключовите думи „const“ и „readonly“. Докато readonly позволява модифициране на поле в конструктора, const не го прави. Числата, низовете и null могат да се използват само като полета const, които са наистина неизменни. Readonly не е наистина неизменна, защото позволява писането само веднъж. Следователно, тя не е константа на време на компилиране като полето const. Наистина неизменните обекти изобщо не променят вътрешното си състояние и затова са по своята същност безопасни за конци.

Класът System.String е неизменен референтен тип, предоставен в библиотеката с рамкови класове .NET. Този клас създава вътрешен нов низ обект за всяко действие на манипулация на низове. Съдържанието на обекти от този тип не се променя, въпреки че синтаксисът го прави сякаш съдържанието може да бъде променено. В допълнение, низът се използва като ключ за хеш таблица за изчисляване на хеш стойности, за да се избегне рискът от повреждане на структурата на хеш данни.

Основният недостатък на неизменните типове е, че те изискват повече ресурси от другите типове обекти.


Това определение е написано в рамките на C #