Object Oriented Programming (OOP)
Abstraction
- Interfaces!
Encapsulation
- Data + Functions inside a container (the class)
Inheritance
- Allows reusing classes and avoiding duplicity
Polymorphism
- Override methods from parent classes
- The returning value must have the same shape