Object Oriented programming is the technique to design software. Object Oriented Programming is a pattern which provide many concept like Inheritance, data binding ,Polymorphism etc. You may say Object Oriented Programming is methodology to design a program using classes and objects.
Object Oriented Programming has some features which is help to develop and design software given as bellow.
Class: Class is the collection of objects, you may say class is the entity of objects where we specifies types of variables that can exist in an object as well as methods to perform operation.
Object: Object is the instance of the class. According to Microsoft MSDN. An object is basically a block of memory that has been allocated and configured according to the blueprint. A program may create many objects of the same class. Objects are also called instances, and they can be stored in either a named variable or in an array or collection.
inheritance: inheriting properties and behaviour by a class from another class is known as inheritance. It provide code re-usability.
Polymorphism: When a method shows different behaviour in different scenario is known as polymorphism. For Example Method Over Loading and Method Over Ridding...
Abstraction: To hiding internal process and show only required information to user is called abstraction.
Encapsulation : Wrapping up data, code and method in single unit is called encapsulation. Encapsulation is responsible to hide data at code/programming level.