Oändlig typ

Författare: Lewis Jackson
Skapelsedatum: 8 Maj 2021
Uppdatera Datum: 1 Juli 2024
Anonim
Oändlig typ - Teknologi
Oändlig typ - Teknologi

Innehåll

Definition - Vad betyder Immutable Type?

En oföränderlig typ, i con av C #, är en typ av objekt vars data inte kan ändras efter skapandet. En obestämbar typ ställer in objektets egenskap eller tillstånd som läsbart eftersom det inte kan ändras efter att det har tilldelats under initieringen.

Oändbara typer är utformade för effektiv minneshantering och bättre hastighet, vilket gör dem lämpliga för objekt med synkroniseringskrav. Immutability ger bättre kodläsbarhet genom att göra ändringar i programtillståndets synlighet och isolera de operationer som ändrar tillstånd från dem som inte gör det. Oändliga typer ger högre säkerhet än muterbara typer.

En oföränderlig typ används där data ska kvarstå efter att ha tilldelats en gång, men utan något krav för att data ska ändras i framtiden. Eftersom oföränderliga objekt inte ändrar deras tillstånd är de mer användbara i scener med flera trådar och multiprocesser, eftersom flera trådar kan läsa eller skriva ett objekt, vilket kan orsaka racingförhållanden och synkroniseringsproblem.


En introduktion till Microsoft Azure och Microsoft Cloud | I hela denna guide kommer du att lära dig vad cloud computing handlar om och hur Microsoft Azure kan hjälpa dig att migrera och driva ditt företag från molnet.

Techopedia förklarar Immutable Type

Objekt av oföränderlig typ kan skapas med hjälp av nyckelorden "const" och "readonly". Medan readonly tillåter modifiering av ett fält inom konstruktören, gör const inte det. Siffror, strängar och noll kan endast användas som konstfält som verkligen är oföränderliga. Readonly är inte riktigt oföränderligt eftersom det tillåter att skriva bara en gång. Således är det inte en sammanställningskonstant som konstfältet. Verkligen oföränderliga föremål ändrar aldrig sitt inre tillstånd alls och är därför i sig gängesäkra.

System.String-klassen är en immutable referenstyp som tillhandahålls i .NET-rambiblioteket. Denna klass skapar ett nytt strängobjekt internt för alla stränghanteringsåtgärder. Innehållet i objekt av denna typ förändras inte, även om syntaxen gör att det verkar som om innehållet kan ändras. Dessutom används strängen som hash-tabellnyckel för beräkning av hashvärden för att undvika risken för att korruptionen har hashdatastrukturen.

Den största nackdelen med immutable typer är att de kräver mer resurser än andra objekttyper.


Denna definition har skrivits i C #