| Examples: C, Algol, FORTRAN, Pascal, Basic, etc | Examples: Java, C++, C#, Python, PHP, JavaScript |
| Overloading not possible | Overloaind possible |
| No access specifier | Private, public, protected access specifier |
| No data hiding | Provides data hiding |
| No inheritance | Provides inheritance |
| Based on unreal world | Based on real world |
| Uses the concept of procedure abstraction. | Uses the concept of data abstraction. |
| Code reusability absent. | Code reusability present. |
| Follows a top-down approach. | Follows a bottom-up approach. |
| No virtual classes. | Virtual classes in inheritance. |