Indholdsfortegnelse:
Definition - Hvad betyder Mutator?
En mutator i forbindelse med C # er en metode med et offentligt niveau af tilgængelighed, der bruges til at ændre og kontrollere værdien af en privat medlemsvariabel i en klasse. Mutatoren bruges til at tildele en ny værdi til det private felt af en type. Det danner et værktøj til at implementere indkapsling ved kun at kontrollere adgangen til de interne feltværdier, der skal ændres.
Fordelene ved at bruge en mutator inkluderer:
- Forhindrer brugeren i direkte adgang til de private data fra en objektforekomst og tillader kun adgang gennem offentlige metoder til at forhindre datakorruption.
- Giver fleksibilitet i ændring af den interne repræsentation af felterne i et objekt, der repræsenterer den interne tilstand uden at bryde grænsefladen, der bruges af objektets klienter.
- Mulighed for at inkludere yderligere behandlingslogik som validering af et værdisæt, udløsning af begivenheder osv. Under ændringen af feltet i mutatoren.
- Tilvejebringer synkronisering, der er nødvendig for multitrådningsscenarier.
- Inkluderer en bestemmelse til at tilsidesætte den mutator, der er erklæret i en baseklasse med koden i den afledte klasse.
Techopedia forklarer Mutator
En mutator er normalt forsynet med en accessor, der returnerer værdien af medlemsvariablen. For datamedlemmer, der er uforanderlige, bør mutatoren ikke gives.
For eksempel kan StudentData være en klasse, der gemmer en studerendes detaljer, som navn, adresse, karakter osv. Der kan være en offentlig metode, SetGrade i klassen. StudentData er mutatoren til at opdatere StudentData-objektet fra koden, der bruger objektet.
Mens en mutator implementeres i C ++ ved en eksplicit offentlig metode til at ændre et privat felt, introducerer C # "egenskaber" som en ny funktion, der implementerer en mutator til at ændre feltværdier såvel som en accessor til at hente feltet. Hver egenskab er repræsenteret i den fælles mellemliggende sprogkode med et par metoder præfixeret med "get _" (accessor) og "set _" (mutator) under hætten. De kaldes internt af det fælles sprogkørsel (CLR). Dette forenkler koden og til tider giver mulighed for udførelse af matematiske operationer.
Mutatoren bruges ikke ofte i objekter, hvor objektets opførsel overvejes snarere end hvordan den fungerer.
