Inheritance is illustrated by the characteristics you inherit from your parents. It allows classes to inherit characteristics from other classes.
In this method, all critical information is encapsulated inside an object, and only a subset of it is revealed to the outside world.
Abstraction refers to hiding an application's internal details from the public. Basically, it is the interaction of a user with a subset of an object's characteristics and functions.
Polymorphism refers to the ability of a variable, function, or object to take on multiple forms. It allows a method to perform different functions by overriding and overloading.
In this method, a child class overrides a parent class method and might provide an alternative implementation. It is used runtime polymorphism.
With this method, you can create functions with the same name but with different implementations. It is used in Compile Time Polymorphism.
It is a self-contained segment with the attributes and processes needed to make data usable in programming terms.
A class is a construct that describes an individual type. It is possible to create instances of a class - referred to as class instances or simply objects.
A constructor initializes a class object, whereas a destructor destroys the object.
Check out this page for more information on OOP features.