Object oriented programming


Draw back of conventional programming are

1. Lack Of Security.
2. Lack of integrity of data.
3. Insufficient modularity.

-> Object is the instance of a class. If human is a class then Asit is a object of human class.
-> Object is an entity which communicate with the environment where as class is an abstract concept.
-> Class doesn't occupying memory.
where as object occupy memory.
-> Data present in the object can only be manipulated by the method or function belonging to that object.

Quarks/features of object oriented programs (oops):-

-> Class.
->Object.
->Data encapsulation.
->Data abstraction.
->Inheritance.
->Polymorphism.
->Dynamic binding.
->Message passing.
->Object delegation.
->Generosity.

Class:-

->Class is the collection of similar type of object
-> It is an abstract concept.
 -> is SEMPLY a template (i.e. it contain data & methods)

Object:-

-> An object is the instance of class
->The Job of object is, it will access data members with the help of dot operator.

Message passing:-

->Object communicate each other. I.e. possible through method.

Data Abstraction:-

->It refers to the act of representing essential features of data without its background i.e. "hiding details"
 Example:
 Cell phone - we know function available in Phone without its background. 

Data Encapsulation:-

->Binding of code and data together .code means method. 
->Encapsulation also hides the complexity involved in a class from the end user.

Inheritance:-

->Code reusability on Java.

Polymorphism:-

-> It means one name many forms.
-> It is 2 types.
1.Static polymorphism.
2.Dynamic polymorphism.

1. Static Polymorphism : 

-> static polymorphism is achieved in class case of method overloading method invoke at compile time.

2. Dynamic polymorphism :

-> It is archived with the help of method.

 Overriding :

 -> In Inheritance concept. method Invoked during runtime environment. 

* C++ is not purely object oriented language, because you can write a program/code without creating a class.
* java is purely object oriented language, because every function required a class,
but java is not 100% object oriented language , Java fail only one ground i.e. primitive data type .

Application of object oriented programming (oop):-

1. Real time system.
2. Simulation and modeling.
3. Object oriented database.
4. Artificial intelligence and expert systems.
 5 Network and parallel programming.

for more detail follow my Instagram id - https://www.instagram.com/asitmaharana10/

 Thank you