1. (1) There are many different concepts associated with OOP (Object-oriented programming) like:
· Class
· Object
· Inheritance
· Polymorphism
· Abstraction
· Encapsulation
· Interface
· Method Overloading
· Method Overriding
· ...and others
QUESTION: Pick FIVE of the above listed OOP concepts and describe each in details (50 points)