Talaan ng mga Nilalaman:
- Kahulugan - Ano ang ibig sabihin ng Hindi mababago na Uri?
- Ipinapaliwanag ng Techopedia ang Uri ng Di-mababago
Kahulugan - Ano ang ibig sabihin ng Hindi mababago na Uri?
Ang isang hindi mababago na uri, sa konteksto ng C #, ay isang uri ng bagay na ang data ay hindi mababago pagkatapos ng paglikha nito. Ang isang hindi mababago na uri ay nagtatakda ng pag-aari o estado ng bagay na binabasa lamang dahil hindi ito mababago pagkatapos na itinalaga sa panahon ng pagsisimula.
Ang mga hindi mababago na uri ay idinisenyo para sa mahusay na pamamahala ng memorya at mas mahusay na bilis, na ginagawang angkop sa kanila para sa mga bagay na may mga kinakailangan sa pag-synchronise. Ang kawalan ng kakayahan ay nagbibigay ng mas mahusay na kakayahang mabasa ng code sa pamamagitan ng paggawa ng mga pagbabago sa kakayahang makita ang programa at ibukod ang mga operasyon na nagbabago ng estado mula sa mga hindi. Ang mga hindi mababago na uri ay nagbibigay ng mas mataas na seguridad kaysa sa mga nakalulutas na uri.
Ang isang hindi mababago na uri ay ginagamit kung saan ang data ay magpapatuloy matapos na itinalaga nang isang beses, ngunit nang walang anumang kinakailangan para sa data na mabago sa hinaharap. Dahil hindi mababago ang mga bagay na hindi nababago ang kanilang estado, mas kapaki-pakinabang ang mga ito sa mga senaryo ng multithread at multiprocess, dahil maaaring basahin o isulat ng maraming mga thread ang isang bagay, na maaaring maging sanhi ng mga kondisyon ng karera at mga isyu sa pag-synchronise.
Ipinapaliwanag ng Techopedia ang Uri ng Di-mababago
Ang mga object ng hindi mababago na uri ay maaaring malikha sa paggamit ng mga keyword na "const" at "readonly". Habang binibigyang-daan kaagad ang pagbabago ng isang patlang sa loob ng tagapagtayo, hindi ginagawa ng const. Ang mga numero, mga string at null ay maaari lamang magamit bilang mga patlang ng const, na tunay na hindi nababago. Ang Readonly ay hindi tunay na hindi mababago sapagkat pinahihintulutan lamang ang pagsulat ng isang beses. Sa gayon, ito ay hindi isang compile-time na pare-pareho tulad ng patlang. Tunay na hindi mababago na mga bagay ay hindi kailanman nagbabago sa kanilang panloob na estado at samakatuwid ay likas na hindi ligtas sa thread.
Ang klase ng System.String ay isang hindi mababago na uri ng sanggunian na ibinigay sa library ng klase ng balangkas ng NET. Lumilikha ang klase na ito ng isang bagong bagay na string sa loob para sa anumang pagkilos ng pagmamanipula ng string. Ang mga nilalaman ng mga bagay ng ganitong uri ay hindi nagbabago, kahit na ang syntax ay lumilitaw na tila maaaring mabago ang mga nilalaman. Bilang karagdagan, ang string ay ginagamit bilang susi ng talahanayan ng hash para sa pagkalkula ng mga halaga ng hash upang maiwasan ang panganib ng pagkasira ng istraktura ng data ng hash.
Ang pangunahing disbentaha ng mga hindi mababago na uri ay nangangailangan sila ng mas maraming mapagkukunan kaysa sa iba pang mga uri ng bagay.