OOSD
Objects and Classes
Inheritence
Polymorphism
Operator Overloading