ฟิลด์ที่ระบุว่า "อ่านอย่างเดียว" สามารถตั้งค่าได้เพียงครั้งเดียวระหว่างการสร้างอ็อบเจ็กต์ ไม่สามารถเปลี่ยนแปลงได้ -
เรามาดูตัวอย่างกัน
class Employee {
readonly int salary;
Employee(int salary) {
this.salary = salary;
}
void UpdateSalary() {
//salary = 50000; // Compile error
}
} ด้านบนเราได้ตั้งค่าฟิลด์เงินเดือนเป็นแบบอ่านอย่างเดียว
หากคุณจะเปลี่ยน จะเกิดข้อผิดพลาดในการคอมไพล์ ดังแสดงในตัวอย่างข้างต้น
ให้เรามาดูวิธีการตรวจสอบว่าอาร์เรย์เป็นแบบอ่านอย่างเดียวหรือไม่ -
ตัวอย่าง
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace lower {
class Program {
static void Main(string[] args) {
Array arr = Array.CreateInstance(typeof(String), 3);
arr.SetValue("Maths", 0);
arr.SetValue("Science", 1);
arr.SetValue("PHP", 2);
Console.WriteLine("isReadOnly: {0}",arr.IsReadOnly.ToString());
}
}
}