Title: Describe the primary principles of object-oriented programming (OOP).
Course: Programming, Advanced (10152-II) > Section: Developing Object-Oriented Programming (OOP)

Description should include the following concepts:

- Abstraction is a general model of a real-world system that includes the essence of that system.
- Encapsulation means that each class should contain all the aspects of its area of responsibility without revealing the details of how it does what it does.
- Inheritance allows one class, called a subclass, to use methods and properties of another class, called a superclass.
- Polymorphism is the idea that a code element can transform into multiple forms or behave in multiple ways.