The process of representing a real-life object in the code or the way of trying to simulate the real-life things in our source code is known as an object-oriented programming language. The important objects or Pillars of OOPS are Object, Class, Abstraction, Inheritance, Encapsulation.
It can be any piece of code that represents the real-life entity or in another word you can say. The process of representing something in the code that represents that user is known as Object that has two things i.e. attribute (characteristics) and functionality (behaviors). It is an instance of the type class
For e.g. Book have attributes like color, dimension and functionality include reading (), writing () etc.
The class is known as the specification of the object or in another word you can say that it is a template to create the specification of an object. We can create a no of the object after creating any class.
For e.g., If we are maintaining a system of Employee of any organization. The most important object in that is employee itself, we have to identify the attributes of the student his behavior and attributes such as name, id no and rank and in behavior we are storing performance(), projectperformance(). We have created a class of employee. In our programming we map variable into variables or data members where as function and functionality to function.
Attributes and Behaviors are interrelated; the rank of the employee will modify the performance of the employee. Which means modification in any attribute modifies the Behaviors of the class.
As we already know that int y=9; // the statement means that y is the variable of type int in the similar method, we can say that if we want to create an object of the class
employee e;// we can say that e is the variable of type employee which is a class and e is the object of that class, which will clear that the object is the instance of the specific class.
As we had created the Class employee, has various attributes and data members that can be possible in real life that may be age, weight color, hair color, eating habits, friends, brother and many more. Since we are creating a database of an organization where hair color, eating habits, friends are not required. Here, the concept of Abstraction will be applied. The process of selecting a few required attribute from the list is known as the Abstraction i.e. we are taking all the necessary requirements and ignoring the irrelevant. In a very similar way, we are trying to map different behavior of the employee that may be discipline, punctuality, sportsmanship, leadership, technical skill, writing skill, communication skill and many more may be cross hundreds. But in our project, there is no need for all the functions of the employee, we are limit to a few things that are relevant to our project.
Abstraction is selecting particular attributes that make relevance to our project.
Very Common Example of Abstraction
Nowadays, API is used in Java and many other built-in functions that are used in c such as scanf, printf, Developer directly calls all the library functions in c and classes in java without any knowledge of the inside code implementation. This is also an example of abstraction, that we do not have knowledge about the code used in java classes we directly create an object of that class and use it in our program.
The concept of encapsulation is created from the word "capsule". Why are capsule used if we have normal other medicines? It is made of some chemicals that prone to some atmospheric reaction .capsule provide protection to that chemical. The principle of encapsulation has been taken from this concept. Every company whether they are small or big MNC require data security since data act as a most essential community in any software.
In C++, data is protected with encapsulation with the use of access specifier i.e. private, public and protected. Private Encapsulation have two main role in C++ programming language i.e controlling data access.
It have functionality and data that are bound together within class in order to safeguard your system.
In real world, object or things found in the form of relationship which need to be simulated. Boss-employee, parent-child, teacher-student, boyfriend-girlfriend, husband-wife. Things all around world works in a relationship. we need both object and relationship to simulate.This simulation can be done with the help of inheritance.