“Write once and use it multiple times” you can achieve this by using class.
Inheritance is the good feature for data redundancy. If you need a same functionality in multiple class you can write a common class for the same functionality and inherit that class to sub class.
It is easy to maintain and modify existing code as new objects can be created with small differences to existing ones.
Using data hiding and abstraction only necessary data will be provided thus maintains the security of data.
Object Oriented Programs are much larger than other programs.
Object Oriented Programs require a lot of work to create.
Object Oriented Programs are slower than other programs, because of their size.