Object Oriented Programming
There are three major features in object-oriented programming: encapsulation, inheritance and polymorphism.Encapsulation: Encapsulation refers to the creation of self-contained modules that bind processing functions to the data. These user-defined data types are called "classes," and one instance of a class is an "object." Inheritance: This is the mechanism by which an object acquires some or all features from one or more other objects. Polymorphism: Object-oriented programming allows procedures about objects to be created whose exact type is not known until runtime.
Meeting these requirements is what usually allows us to classify a language as Object Oriented.
While object-oriented programming languages encourages development focus on taxonomy and relationships, prototype-based programming languages encourages to focus on behaviour first and then later classify.