OOP is a type of programming in which programmers define not only the data type of a data structure, but also the types of operations that can be applied to the data structure.
One of the main advantages of object-oriented programming over procedural programming is that they enable programmers to create modules that do not need to be changed when a new type of object is added. A programmer can simply create a new object that inherits many of its features for existing objects. This makes object-oriented programs easier to modify.