Object-Oriented Programming (OOP) เป็นกระบวนทัศน์การเขียนโปรแกรมที่มีจุดมุ่งหมายเพื่อเป็นตัวแทนของเอนทิตีในโลกแห่งความเป็นจริงและการโต้ตอบผ่านการใช้วัตถุ ใน OOP วัตถุคือตัวอย่างของคลาส ซึ่งเป็นพิมพ์เขียวที่กำหนดคุณสมบัติและพฤติกรรมของวัตถุ
Encapsulation เป็นแนวคิดพื้นฐานใน OOP ที่อ้างถึงวิธีปฏิบัติในการซ่อนรายละเอียดการใช้งานของวัตถุจากผู้ใช้ ซึ่งหมายความว่าสถานะภายในและพฤติกรรมของวัตถุสามารถเข้าถึงได้และแก้ไขผ่านอินเทอร์เฟซสาธารณะเท่านั้น การห่อหุ้มช่วยให้แน่ใจว่าวัตถุยังคงอยู่ในสถานะที่สอดคล้องกันและสามารถคาดเดาพฤติกรรมได้
การสืบทอดเป็นอีกหนึ่งแนวคิดหลักใน OOP ที่ช่วยให้คลาสใหม่ขึ้นอยู่กับคลาสที่มีอยู่ การสืบทอดช่วยให้คลาสย่อยสามารถสืบทอดคุณสมบัติและลักษณะการทำงานจากซูเปอร์คลาส ทำให้สามารถใช้โค้ดซ้ำได้และส่งเสริมการจัดลำดับชั้นของคลาส การสืบทอดสามารถใช้เพื่อสร้างคลาสพิเศษเพิ่มเติมที่เพิ่มหรือแก้ไขฟังก์ชันการทำงานของคลาสพาเรนต์
ความแตกต่างคือความสามารถของวัตถุในหลายรูปแบบ ใน OOP โดยทั่วไปแล้ว ความหลากหลายจะเกิดขึ้นได้จากการแทนที่เมธอดและการโอเวอร์โหลดเมธอด การแทนที่เมธอดทำให้คลาสย่อยจัดเตรียมการใช้งานที่แตกต่างกันของเมธอดที่กำหนดไว้แล้วในซูเปอร์คลาส การโอเวอร์โหลดเมธอดทำให้สามารถกำหนดเมธอดหลายเมธอดที่มีชื่อเดียวกันในคลาสได้ ตราบใดที่มีพารามิเตอร์ต่างกัน
โดยสรุป OOP เป็นกระบวนทัศน์ที่ทรงพลังสำหรับการสร้างแบบจำลองหน่วยงานในโลกแห่งความเป็นจริงและการโต้ตอบผ่านการใช้วัตถุ การห่อหุ้ม การสืบทอด และความหลากหลายเป็นแนวคิดหลักใน OOP ที่เปิดใช้งานโค้ดซ้ำ โมดูลาร์ และความยืดหยุ่น ด้วยการเรียนรู้พื้นฐานเหล่านี้ โปรแกรมเมอร์สามารถสร้างระบบซอฟต์แวร์ที่แข็งแกร่งและบำรุงรักษาได้