Rumah Pengembangan Apa jenis bisa berubah? - definisi dari techopedia

Apa jenis bisa berubah? - definisi dari techopedia

Daftar Isi:

Anonim

Definisi - Apa yang dimaksud dengan Mutable Type?

Jenis yang dapat diubah, dalam C #, adalah jenis objek yang anggota datanya, seperti properti, data, dan bidang, dapat dimodifikasi setelah pembuatannya.


Jenis yang dapat diubah digunakan dalam aplikasi paralel, di mana objek dari jenis nilai yang dapat diubah disimpan dalam tumpukan oleh Common Language Runtime (CLR). Ini memberikan beberapa optimasi, yang membuatnya lebih cepat daripada objek yang dialokasikan heap. Untuk mencegah kesalahan sinkronisasi terjadi dalam aplikasi paralel karena beberapa utas mengakses data yang dibagikan, jenis yang dapat diubah digunakan dengan beberapa jenis mekanisme penguncian.


Karena sifatnya yang melekat, data tipe yang dapat berubah dapat dimodifikasi selama waktu berjalan, sehingga tipe yang dapat berubah sering digunakan ketika objek berisi sejumlah besar data yang dapat diubah. Meskipun tipe yang dapat berubah tidak seaman dan aman seperti tipe yang tidak dapat diubah, ini lebih sering digunakan dengan variabel tipe nilai, yang dialokasikan di stack, meningkatkan kinerja.

Techopedia menjelaskan Jenis Mutable

Semua tipe nilai bawaan seperti int, dobel, dll., Adalah tipe yang bisa berubah dan dapat dibuat tidak berubah dengan menambahkan pengubah "readonly" sebelum variabel. Jika tipe referensi yang dapat diubah ditentukan dengan pengubah readonly, kompiler C # menghasilkan peringatan. Dengan menambahkan pengubah readonly ke bidang tipe referensi, bidang tidak dapat diganti dengan instance lain dari tipe referensi, tetapi akan memungkinkan data instance dari bidang yang akan diubah melalui tipe referensi.


Sebagai contoh, StringBuilder adalah tipe referensi yang bisa berubah di pustaka .NET framework, di mana nilai string dari instance yang dibuat dari tipe ini dapat dimodifikasi dengan menambahkan, menghapus, mengganti atau memasukkan karakter.


Tipe yang dapat berubah tidak boleh diturunkan dari tipe yang tidak dapat diubah karena ada kemungkinan metode virtual di kelas turunan untuk menimpanya sehingga anggota yang tidak dapat diubah ditimpa.


Keterbatasan utama dari tipe yang dapat berubah adalah bahwa ketika melewati objek dengan tipe yang dapat berubah (seperti struct) melalui penugasan variabel lokal atau sebagai parameter untuk suatu metode, nilai objek ditransfer dan bukan objek itu sendiri. Dengan ini, salinan objek dimutasi dan bukan yang asli. Perilaku ini dapat menyebabkan bug yang tidak terduga.

Definisi ini ditulis dalam konteks C #
Apa jenis bisa berubah? - definisi dari techopedia