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


