A construct containing data as well as methods (functions for manipulating the construct’s data). Object-oriented programming (OOP) focuses on objects instead of functions for manipulating separate data entities.
The “blueprint” for an object is a class; a specific object is an “instance” of a class that you access using its associated methods. New classes can be derived from more general classes through a procedure called inheritance.
The derived class contains all the methods and data of the original class, which can simplify programming.