บ้าน พัฒนาการ destructor คืออะไร - คำจำกัดความจาก techopedia

destructor คืออะไร - คำจำกัดความจาก techopedia

สารบัญ:

Anonim

คำจำกัดความ - Destructor หมายถึงอะไร

destructor เป็นวิธีพิเศษที่เรียกโดยอัตโนมัติในระหว่างการทำลายวัตถุ การดำเนินการใน destructor มีดังต่อไปนี้:

  • การกู้คืนพื้นที่ฮีปที่จัดสรรระหว่างอายุการใช้งานของวัตถุ
  • การปิดการเชื่อมต่อไฟล์หรือฐานข้อมูล
  • ปล่อยทรัพยากรเครือข่าย
  • ปล่อยทรัพยากรล็อค
  • งานทำความสะอาดอื่น ๆ

Techopedia อธิบาย Destructor

Destructors ถูกเรียกอย่างชัดเจนใน C ++ อย่างไรก็ตามใน C # และ Java สิ่งนี้ไม่ใช่กรณีเนื่องจากการจัดสรรและการปล่อยหน่วยความจำที่จัดสรรให้กับวัตถุนั้นได้รับการจัดการโดยตัวเก็บขยะ ในขณะที่ destructors ใน C # และ Java (เรียกว่า finalizers) เป็น nondeterministic, destructors C # จะรับประกันว่าจะถูกเรียกโดยเวลารัน. NET อย่างไรก็ตาม Java finalizers ต้องถูกเรียกใช้อย่างชัดเจนเนื่องจากไม่รับประกันการเรียกใช้

คุณสมบัติที่สำคัญของ destructors สามารถสรุปได้ดังนี้:

  • การร้องขออัตโนมัติและไม่มีการโทรที่ชัดเจนจากรหัสผู้ใช้
  • ไม่อนุญาตการบรรทุกเกินพิกัดหรือการสืบทอด
  • ไม่ได้ระบุตัวดัดแปลงการเข้าถึงหรือพารามิเตอร์
  • ลำดับของการโทรหาผู้ทำลายล้างในคลาสที่ได้รับมาจากลำดับที่ได้รับมากที่สุดไปยังระดับต่ำสุด
  • เรียกได้ว่าไม่เพียง แต่ในช่วงที่วัตถุถูกทำลาย แต่ยังรวมถึงเมื่อวัตถุอินสแตนซ์นั้นไม่มีสิทธิ์เข้าใช้อีกต่อไป
  • ใช้ในคลาส แต่ไม่ใช่ structs
  • ใช้เพื่อปล่อยทรัพยากรที่ไม่มีการจัดการที่มีราคาแพงเท่านั้น (เช่น Windows, การเชื่อมต่อเครือข่าย ฯลฯ ) ที่วัตถุเก็บไว้แทนที่จะปล่อยการอ้างอิงที่มีการจัดการ
destructor คืออะไร - คำจำกัดความจาก techopedia