Skip to main content

วัตถุที่ไม่เปลี่ยนรูปคืออะไร?

ในการเขียนโปรแกรมเชิงวัตถุวัตถุที่ไม่เปลี่ยนรูปเป็นวัตถุที่ไม่สามารถเปลี่ยนแปลงคุณสมบัติได้หลังจากสร้างขึ้นในทางตรงกันข้ามวัตถุส่วนใหญ่เป็นวัตถุที่ไม่แน่นอนซึ่งหมายความว่าคุณสมบัติบางอย่างบางส่วนหรือทั้งหมดสามารถเปลี่ยนแปลงได้อย่างอิสระหลังจากการสร้างภาษาคอมพิวเตอร์ที่หลากหลายมีความสามารถในการสร้างวัตถุที่ไม่เปลี่ยนรูปรวมถึง Java, C ++, Erlang, TCL และ Scala

วัตถุที่ไม่เปลี่ยนรูปสามารถสร้างได้ในหนึ่งในสองวิธี: โดยการสร้างคลาสที่เป็นคำจำกัดความการประกาศวัตถุที่ไม่แน่นอนเป็นอย่างอื่นที่ไม่เปลี่ยนรูปวิธีการในการสร้างคลาสที่ไม่เปลี่ยนรูปแตกต่างกันไปขึ้นอยู่กับภาษาคอมพิวเตอร์ที่ใช้โดยไม่คำนึงถึงภาษาคลาสที่ไม่เปลี่ยนรูปจะไม่มีวิธีการที่สามารถเปลี่ยนข้อมูลภายในและไม่มีวิธีการที่จะเปลี่ยนแปลง mdash;เช่นการแทนที่หรือมากเกินไป mdash;ในทางที่จะเปลี่ยนข้อมูลภายในนี่เป็นวิธีที่ซับซ้อนมากขึ้นทั้งสองวิธีในการสร้างวัตถุที่ไม่เปลี่ยนรูปจากวัตถุที่ไม่แน่นอนเป็นอย่างอื่นในทางกลับกันมักจะสามารถใช้คำหลักเพื่อกำหนดวัตถุที่ไม่เปลี่ยนรูป

เป็นตัวอย่างการสร้างวัตถุที่ไม่เปลี่ยนรูปใน Java อาศัยคำหลักสุดท้ายวิธีที่รวดเร็วในการสร้างชั้นเรียนที่ไม่เปลี่ยนรูปใน Java คือการประกาศชั้นเรียนรวมถึงวิธีการและสมาชิกข้อมูลทั้งหมดกลยุทธ์ที่คล้ายกันสามารถใช้ใน C ++ ด้วยคำหลัก constวิธีการเหล่านี้ขึ้นอยู่กับเนื้อหาของชั้นเรียนอาจไม่ใช่วิธีที่ดีที่สุดโดยทั่วไปวัตถุสามารถทำได้โดยไม่เปลี่ยนรูปโดยการบำรุงรักษาข้อมูลภายในอย่างระมัดระวัง

การสร้างวัตถุที่ไม่เปลี่ยนรูปโดยใช้คำหลักดังในตัวอย่างข้างต้นมักจะง่ายกว่าการเขียนทั้งชั้นเรียนที่ไม่เปลี่ยนรูปอย่างไรก็ตามการใช้วิธีการนี้มีอันตรายเมื่อกำหนดวัตถุที่ไม่เปลี่ยนรูปอย่างชัดเจนในลักษณะนี้มันเป็นสิ่งสำคัญสำหรับโปรแกรมเมอร์เพื่อให้แน่ใจว่าคุณสมบัติและข้อมูลที่เหมาะสมทั้งหมดได้ถูกรวมเข้ากับวัตถุก่อนการพึ่งพาวัตถุที่ไม่สมบูรณ์อาจเป็นอันตรายโดยเฉพาะอย่างยิ่งหากไม่มีข้อมูลที่จำเป็น

หากวัตถุไม่สามารถเปลี่ยนแปลงได้ แต่ต้องใช้ข้อมูลที่ไม่เปลี่ยนรูปอย่างถูกต้องข้อมูลที่ไม่เปลี่ยนรูปจะต้องเริ่มต้นก่อนที่วัตถุที่ไม่แน่นอนจะสามารถทำได้วัตถุที่ไม่เปลี่ยนรูปจะไม่เปลี่ยนรูปไม่ว่าจะเป็นค่าข้อมูลหรือวัตถุขนาดใหญ่และจะต้องได้รับการปฏิบัติเช่นนี้เสมอโดยทั่วไปวัตถุที่ไม่เปลี่ยนรูปไม่สามารถทำให้ไม่แน่นอนหลังจากที่มันถูกสร้างขึ้นแม้ว่าบางครั้งพวกเขาอาจถูกคัดลอกเป็นวัตถุที่ไม่แน่นอนโดยปกติจะสามารถสันนิษฐานได้ว่าวัตถุที่ไม่เปลี่ยนรูปและสำเนาใด ๆ ก็ไม่เปลี่ยนรูปแบบซึ่งสามารถป้องกันข้อมูลหรือปัญหาหน่วยความจำ