Rumah Pembangunan Apakah jenis yang tidak berubah? - definisi dari techopedia

Apakah jenis yang tidak berubah? - definisi dari techopedia

Isi kandungan:

Anonim

Definisi - Apakah maksud Jenis Tidak Berubah?

Jenis tidak berubah, dalam konteks C #, adalah jenis objek yang datanya tidak boleh diubah selepas penciptaannya. Jenis tidak berubah menetapkan sifat atau keadaan objek sebagai bacaan sahaja kerana ia tidak boleh diubah suai selepas ia ditugaskan semasa permulaan.


Jenis yang tidak berubah direka untuk pengurusan memori yang cekap dan kelajuan yang lebih baik, yang menjadikannya sesuai untuk objek dengan keperluan penyegerakan. Keterbatasan menyediakan kebolehbacaan kod yang lebih baik dengan membuat perubahan dalam penglihatan keadaan program dan mengasingkan operasi yang mengubah keadaan daripada yang tidak. Jenis yang tidak dapat digunakan memberikan keselamatan yang lebih tinggi daripada jenis yang boleh berubah.


Jenis tidak berubah digunakan di mana data akan berterusan selepas diberikan sekali, tetapi tanpa sebarang keperluan untuk data yang akan diubah pada masa akan datang. Oleh kerana objek yang tidak berubah tidak mengubah keadaan mereka, ia lebih berguna dalam senario multithread dan multiprocess, kerana pelbagai thread boleh membaca atau menulis sesuatu objek, yang boleh menyebabkan masalah perlumbaan dan isu penyegerakan.

Techopedia menerangkan Jenis Immutable

Objek jenis tidak berubah boleh dibuat dengan menggunakan kata kunci "const" dan "readonly". Walaupun readonly membolehkan pengubahsuaian bidang dalam pembina, kon tidak. Nombor, rentetan dan batal hanya boleh digunakan sebagai medan sebutan, yang benar-benar tidak berubah. Readonly tidak benar-benar tidak berubah kerana ia membolehkan menulis hanya sekali. Oleh itu, ia bukan pemalar masa kompilasi seperti medan const. Objek-objek yang tidak berubah-ubah tidak pernah mengubah keadaan dalaman mereka dan oleh itu, secara semula jadi benang selamat.


Kelas System.String adalah jenis rujukan yang tidak berubah yang disediakan dalam perpustakaan kelas rangka kerja NET. Kelas ini mewujudkan objek rentetan baru secara dalaman untuk sebarang tindakan manipulasi rentetan. Isi objek jenis ini tidak berubah, walaupun sintaks menjadikannya muncul seolah-olah kandungan boleh diubah. Di samping itu, rentetan digunakan sebagai kunci jadual hash untuk pengiraan nilai hash untuk mengelakkan risiko merosakkan struktur data hash.


Kelemahan utama jenis tidak berubah ialah mereka memerlukan lebih banyak sumber berbanding jenis objek lain.

Takrif ini ditulis dalam konteks C #
Apakah jenis yang tidak berubah? - definisi dari techopedia