Rumah Pembangunan Apakah jenis mutable? - definisi dari techopedia

Apakah jenis mutable? - definisi dari techopedia

Isi kandungan:

Anonim

Definisi - Apa maksud Mutable Type?

Jenis mutable, dalam C #, adalah jenis objek yang ahli datanya, seperti sifat, data dan bidang, dapat diubah suai setelah penciptaannya.


Jenis Mutable digunakan dalam aplikasi selari, di mana objek jenis nilai mutable dikekalkan dalam timbunan oleh Runtime Language Common (CLR). Ini memberikan beberapa pengoptimuman, yang menjadikannya lebih cepat daripada objek yang diperuntukkan. Untuk mengelakkan kesilapan penyegerakan daripada berlaku dalam aplikasi selari kerana beberapa benang mengakses data yang dikongsi, jenis boleh ubah digunakan dengan beberapa jenis mekanisme mengunci.


Oleh kerana sifatnya yang wujud, data jenis boleh ubah boleh diubahsuai semasa masa kendalian, jadi jenis mutable sering digunakan apabila objek mengandungi sejumlah besar data yang boleh ditukar. Walaupun jenis boleh berubah bukan sebagai benang selamat dan terjamin sebagai jenis yang tidak berubah, ia lebih kerap digunakan dengan pembolehubah jenis nilai, yang dapat diperuntukkan dalam timbunan, meningkatkan prestasi.

Techopedia menerangkan Jenis Mutable

Semua jenis nilai terbina dalam seperti int, double, dan lain-lain, adalah jenis yang boleh berubah dan boleh dibuat tidak berubah dengan menambah pengubah "readonly" sebelum pembolehubah. Sekiranya jenis rujukan mutable dinyatakan dengan pengubah yang dibaca, pengkompil C # menghasilkan amaran. Dengan menambahkan pengubahsuaian readonly ke dalam jenis rujukan, medan tidak boleh digantikan dengan contoh lain dari jenis rujukan, tetapi akan membolehkan data contoh bidang diubahsuai melalui jenis rujukan.


Sebagai contoh, StringBuilder adalah jenis rujukan mutable dalam perpustakaan rangka kerja .NET, di mana nilai rentetan contoh yang dibuat daripada jenis ini boleh diubah suai dengan menambahkan, mengeluarkan, menggantikan atau memasukkan aksara.


Jenis mutable tidak boleh diperoleh daripada jenis yang tidak berubah kerana terdapat kemungkinan kaedah maya dalam kelas yang diturunkan untuk menimpakannya sehingga anggota yang tidak berubah ditimpa.


Batasan utama jenis boleh berubah ialah ketika melewati objek jenis yang boleh berubah (seperti struct) melalui penyerahan pembolehubah setempat atau sebagai parameter kepada suatu kaedah, nilai objek dipindahkan dan bukan objek itu sendiri. Dengan ini, salinan objek itu bermutasi dan bukan asalnya. Tingkah laku ini boleh menyebabkan pepijat yang tidak dijangka.

Takrif ini ditulis dalam konteks C #
Apakah jenis mutable? - definisi dari techopedia