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

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

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

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

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