object-oriented programming (OOP)

A system of programming that permits an abstract, modular typing hierarchy, and features polymorphism, inheritance, and encapsulation.