Turinys:
Apibrėžimas - ką reiškia „Mutator“?
C # kontekste mutatorius yra metodas, turintis viešą prieinamumo lygį, naudojamas modifikuoti ir valdyti klasės privataus nario kintamojo vertę. Mutatorius naudojamas priskiriant naują vertę privačiam tipo laukui. Tai yra įrankis kapsuliavimui įgyvendinti tik kontroliuojant prieigą prie vidinio lauko verčių, kurias reikia modifikuoti.
Mutatoriaus naudojimo pranašumai yra šie:
- Neleidžia vartotojui tiesiogiai pasiekti privačių objektų egzempliorių duomenų ir leidžia naudotis tik viešaisiais metodais, kad būtų išvengta duomenų sugadinimo.
- Suteikia lankstumo modifikuojant objekto laukų, vaizduojančių vidinę būseną, vidinį vaizdavimą, nenutraukiant objekto klientų naudojamos sąsajos.
- Galimybė įtraukti papildomą apdorojimo logiką, pavyzdžiui, nustatytų verčių patvirtinimą, įvykių suaktyvinimą ir kt., Keičiant lauką mutatoriuje.
- Pateikiama sinchronizacija, reikalinga daugiapakopiams scenarijams.
- Apima nuostatą nepaisyti bazinėje klasėje deklaruojamo mutatoriaus su išvestinės klasės kodu.
Techopedia paaiškina Mutator
Mutatorius paprastai pateikiamas su prieigos elementu, kuris grąžina nario kintamojo vertę. Duomenų nariams, kurie yra nekintami, mutatorius neturėtų būti pateiktas.
Pvz., „StudentData“ gali būti klasė, kurioje saugoma informacija apie mokinį, pvz., Vardas, adresas, pažymys ir kt. Klasėje gali būti viešas metodas „SetGrade“. „StudentData“ yra mutatorius, skirtas atnaujinti „StudentData“ objektą iš kodo, kuris naudoja objektą.
Nors mutatorius C ++ yra įgyvendinamas aiškiai apibrėžtu viešojo metodo būdu modifikuoti privatų lauką, C # pristato „savybes“ kaip naują funkciją, kuri įgyvendina mutatorių lauko vertėms modifikuoti, taip pat kaip priedėlį, kad būtų galima gauti lauką. Kiekviena savybė yra pavaizduota bendrame tarpiniame kalbos kode su metodų pora, kurios priešais gaubtą yra „gauti _“ (prieiga) ir „nustatyti _“ (mutatorius). Jie yra vadinami bendruoju kalbos vykdymo laiku (CLR). Tai supaprastina kodą ir kartais leidžia atlikti matematines operacijas.
Mutatorius dažnai naudojamas objektuose, kur atsižvelgiama į objekto elgesį, o ne į tai, kaip jis veikia.
