Property

Definition

Advantages

Encapsulation

Defined as a kind of data abstraction and information hiding.

Reduces complexity Reusability

Inheritance

A measure of the “is-a” relationship among classes.

Eliminates redundant code Reusability

Coupling

Show the interdependency of an object to other objects in a system design.

Good understandability Reusability

Cohesion

Refers to the internal consistency within the components of design.

Reusability