SlideShare a Scribd company logo
Need of Object Oriented
Programming
Amar Jukuntla
Object Oriented Programming
Procedure Oriented Programming Object Oriented Programming
Why Do We Need Object‐Oriented Programming?
• Object Oriented Programming was developed because
limitations were discovered in earlier approaches to
programming.
• To appreciate what OOP does, we need to understand
what these limitations are and how they arose from
traditional programming languages.
Object5
Object4
Object3
Object2
Object1
POP Vs. OOP
Procedure Oriented Programming Object Oriented Programming
• In OOP, program is divided into parts called
objects.
• OOP has access specifiers named Public, Private,
Protected, etc.
• OOP provides Data Hiding so provides more
security.
• In OOP, overloading is possible in the form of
Function Overloading and Operator Overloading.
• In OOP, data can not move easily from function to
function, it can be kept public or private so we can
control the access of data.
• Example of OOP are : C++, JAVA, VB.NET,
C#.NET.
• In POP, program is divided into small parts called
functions.
• POP does not have any access specifier.
• POP does not have any proper way for hiding data
so it is less secure.
• In POP, Overloading is not possible.
• In POP, Most function uses Global data for sharing
that can be accessed freely from function to
function in the system.
• Example of POP are : C, VB, FORTRAN, Pascal.
Advantages of OOP
• Code Reuse and Recycling: Objects created for Object Oriented Programs can easily be
reused in other programs.
• Design Benefits: Large programs are very difficult to write. Object Oriented Programs
force designers to go through an extensive planning phase, which makes for better designs
with less flaws. In addition, once a program reaches a certain size, Object Oriented
Programs are actually easier to program than non-Object Oriented ones.
• Software Maintenance: Programs are not disposable. Legacy code must be dealt with on
a daily basis, either to be improved upon (for a new version of an exist piece of software)
or made to work with newer computers and software. An Object Oriented Program is much
easier to modify and maintain than a non-Object Oriented Program. So although a lot of
work is spent before the program is written, less work is needed to maintain it over time.
• Simplicity
Binding
Binding
• Binding means link between
procedure call and code to be
executed.
• When a method call is resolved
at compile time, it is known
as STATIC BINDING.
• While if method invocation is
resolved at runtime, it is known
as DYNAMIC BINDING OR LATE
BINDING.
Continue…
 Because of polymorphism, a reference variable of type Parent can hold an object of type
Child, which extends Parent. Now if you call a virtual method (not private, final or static) on
this object, then Compiler can not find actual method, because it could be the one, which is
defined in Parent class, or the one which Child has overridden. This call can only be resolved
at runtime, when actual object is available. That's why this is known as RUNTIME OR
DYNAMIC BINDING.
 On the hand, private, static and final methods are resolved at compile time, because compiler
knows that they can't be overridden and only possible methods are those, which are defined
inside a class, whose reference variable is used to call this method. This is known as STATIC
OR COMPILE TIME BINDING, all private, static and final methods are resolved using static
binding.
Continue…
This concept is also closely related to method overloading and method overriding. As
dynamic binding happens when method overriding is possibility and overloaded method
calls are resolved at compile time, because they are always defined in same class.
• Class
• Class is a Blueprint for an Object.
• Object
• Object is instance of class or it is
created from class.
Attribute Behavior
Name Walk
Weight Run
Height Talk
Age Speak
Gender Sleep
P
R
O
P
E
R
T
I
E
S
M
E
T
H
O
D
S
Message Passing
Exception
OOP Features
• Encapsulation
• Inheritance
• Polymorphism
• Abstraction
• Method overloading
• Method overriding
OOP Features
• Encapsulation
• Encapsulation is the mechanism binds code and data together, and keeps both safe
from outside interference and misuse.
• Encapsulation is protective cover that prevents the code and data from being accessed
by other code defined outside.
• The process of wrapping up of data (properties) and behavior (methods) of an object
into single unit. In plain English means to be enclosed in or as if in a capsule.
• Advantages
• The fields of a class can be made read-only or write-only.
• A class can have total control over what is stored in its fields.
• The user doesn’t know how the class stores data.
Continue…
Class encapsulation
{
public void method1()
{
int i=0; //variable
String Name=“Variable”;
//variable
}
public void method2()
{
int i=0; //variable
String Name=“Variable”;
//variable
}
}
Continue…
• Inheritance
• Inheritance is the method creating the new class based on already existing class.
• The new desired class is called subclass or child class. The existing class is called parent
class or super class or base class.
• Inheritance is the process by which one object acquires the properties of another object.
• Example;
iPhone
iPhone-3s
iPhone-4
iPhone-5
iPhone-5s
Continue…
• Polymorphism
• Ability to change form is known as Polymorphism.
• Polymorphism means “many forms”.
• Method overloading, method overriding, interfaces are the example of
Polymorphism.
• Example:
• Overloading
• The same method name (method overloading) or operator
symbol (operator overloading) can be used in different contents.
• In method overloading, multiple methods having same name can
appear in a class, but with different signature.
• Java does not allow operator overloading yet + is overloaded for
class string. The ‘+’ operator can be used for addition as well as
string concatenation.
• Example:
• Add a1=new Add();
• Add a2=new Add(1,2);
• Add a3=new Add(1,2,3);
Continue…
• Overriding
• Defining a method in subclass having the same name as a method in the
parent class is known as Overriding.
Continue…
• Abstraction
• Abstraction specifies necessary and sufficient descriptions rather than
implementation details.
• Abstraction is an essential element of Object Oriented Programming. Through
abstraction we can manage complexity.
• Abstraction means hiding the unnecessary data from users. Abstraction defines only
the essential characteristics of an object.
Flower
Arranger
Gardeners
Grower
Wholesaler
Summary of Object Oriented Programming Concepts
• Everything is an Object.
• Computation is performed by objects communicating with each other, requesting
that other objects perform actions.
• Each object has its own memory, which consist of other objects.
• Every object is an Instance of a class. A class simply represents a grouping of
similar objects, such as integers or lists.
• The class is the responsible for behaviour associated with an object. That is, all
objects that are instance of the same class can perform the same action.
• Classes are organized into a singly rooted tree structure, called the Inheritance
hierarchy.

More Related Content

PPT
Basic concepts of object oriented programming
Sachin Sharma
 
PPTX
Concept of OOPS with real life examples
Neha Sharma
 
PPT
Object Oriented Programming Concepts
thinkphp
 
PPTX
Object Oriented Programming in Java _lecture 1
Mahmoud Alfarra
 
PPTX
Introduction to oop
colleges
 
PPTX
concept of oops
prince sharma
 
PPT
Oop java
Minal Maniar
 
PPT
Oops ppt
abhayjuneja
 
Basic concepts of object oriented programming
Sachin Sharma
 
Concept of OOPS with real life examples
Neha Sharma
 
Object Oriented Programming Concepts
thinkphp
 
Object Oriented Programming in Java _lecture 1
Mahmoud Alfarra
 
Introduction to oop
colleges
 
concept of oops
prince sharma
 
Oop java
Minal Maniar
 
Oops ppt
abhayjuneja
 

What's hot (20)

PPTX
Issues in knowledge representation
Sravanthi Emani
 
PDF
Data structure ppt
Prof. Dr. K. Adisesha
 
PPT
Class and object in C++
rprajat007
 
PPTX
Inheritance in c++
Vineeta Garg
 
PPTX
Concurrency Control in Database Management System
Janki Shah
 
PPTX
Procedural vs. object oriented programming
Haris Bin Zahid
 
DOCX
Basic structure of c programming
TejaswiB4
 
PPTX
Polymorphism in c++(ppt)
Sanjit Shaw
 
PPTX
Structure of the page table
duvvuru madhuri
 
PPTX
linked list in data structure
shameen khan
 
PPTX
File systems versus a dbms
RituBhargava7
 
PPTX
Loaders ( system programming )
Adarsh Patel
 
ODP
Anatomy of android application
Nikunj Dhameliya
 
PPTX
Binary search in data structure
Meherul1234
 
PPTX
ELEMENTS OF TRANSPORT PROTOCOL
Shashank Rustagi
 
PPSX
Inheritance
Selvin Josy Bai Somu
 
PPTX
FORESTS
MSharmilaDeviITDEPT
 
PPT
Ll(1) Parser in Compilers
Mahbubur Rahman
 
PPTX
Difference between File system And DBMS.pptx
ShayanMujahid2
 
PDF
Introduction to oops concepts
Nilesh Dalvi
 
Issues in knowledge representation
Sravanthi Emani
 
Data structure ppt
Prof. Dr. K. Adisesha
 
Class and object in C++
rprajat007
 
Inheritance in c++
Vineeta Garg
 
Concurrency Control in Database Management System
Janki Shah
 
Procedural vs. object oriented programming
Haris Bin Zahid
 
Basic structure of c programming
TejaswiB4
 
Polymorphism in c++(ppt)
Sanjit Shaw
 
Structure of the page table
duvvuru madhuri
 
linked list in data structure
shameen khan
 
File systems versus a dbms
RituBhargava7
 
Loaders ( system programming )
Adarsh Patel
 
Anatomy of android application
Nikunj Dhameliya
 
Binary search in data structure
Meherul1234
 
ELEMENTS OF TRANSPORT PROTOCOL
Shashank Rustagi
 
Ll(1) Parser in Compilers
Mahbubur Rahman
 
Difference between File system And DBMS.pptx
ShayanMujahid2
 
Introduction to oops concepts
Nilesh Dalvi
 
Ad

Similar to Need of object oriented programming (20)

PDF
Oops concepts || Object Oriented Programming Concepts in Java
Madishetty Prathibha
 
PPTX
SKILLWISE - OOPS CONCEPT
Skillwise Group
 
PPTX
Introduction to OOPs second year cse.pptx
solemanhldr
 
PPTX
Object Oriented Programming - Cheat sheet.pptx
MOSIUOA WESI
 
PPTX
OBJECT ORIENTED PROGRAMMING CONCEPTS IN C++.pptx
Maharshi Dayanand University Rohtak
 
PDF
UNIT1- OBJECT ORIENTED PROGRAMMING IN JAVA- AIML IT-SPPU
ApurvaLaddha
 
PPTX
Intro to object oriented programming.pptx
RafiaZafar19
 
PDF
1unit-120324103142-phpapp02.pdf
SahajShrimal1
 
DOCX
Basic concept of object oriented programming
Mansur Mughnee
 
PPTX
1 unit (oops)
Jay Patel
 
PPTX
What is OOP_ (Object Oriented Programming) (1).pptx
hreempandya
 
PPTX
principle of oop’s in cpp
gourav kottawar
 
PPTX
chapterOne.pptxFSdgfqdzwwfagxgghvkjljhcxCZZXvcbx
berihun18
 
PPTX
Object Oriented Programming WEOBRDSLKBNSDF
SaiAdithyaKumaravelu
 
PPT
Basic Java Concept - Practical Oriented Methodologies
SakthiVinayagam5
 
PPTX
Object oriented programming
baabtra.com - No. 1 supplier of quality freshers
 
PPTX
Object Oriented Programming Concepts
SanmatiRM
 
PPTX
Object oriented programming
MH Abid
 
PPTX
UNIT I OOP AND JAVA FUNDAMENTALS CONSTRUCTOR
mohanrajm63
 
PDF
12th ip CBSE chapter 4 oop in java notes complete
Harish Gyanani
 
Oops concepts || Object Oriented Programming Concepts in Java
Madishetty Prathibha
 
SKILLWISE - OOPS CONCEPT
Skillwise Group
 
Introduction to OOPs second year cse.pptx
solemanhldr
 
Object Oriented Programming - Cheat sheet.pptx
MOSIUOA WESI
 
OBJECT ORIENTED PROGRAMMING CONCEPTS IN C++.pptx
Maharshi Dayanand University Rohtak
 
UNIT1- OBJECT ORIENTED PROGRAMMING IN JAVA- AIML IT-SPPU
ApurvaLaddha
 
Intro to object oriented programming.pptx
RafiaZafar19
 
1unit-120324103142-phpapp02.pdf
SahajShrimal1
 
Basic concept of object oriented programming
Mansur Mughnee
 
1 unit (oops)
Jay Patel
 
What is OOP_ (Object Oriented Programming) (1).pptx
hreempandya
 
principle of oop’s in cpp
gourav kottawar
 
chapterOne.pptxFSdgfqdzwwfagxgghvkjljhcxCZZXvcbx
berihun18
 
Object Oriented Programming WEOBRDSLKBNSDF
SaiAdithyaKumaravelu
 
Basic Java Concept - Practical Oriented Methodologies
SakthiVinayagam5
 
Object Oriented Programming Concepts
SanmatiRM
 
Object oriented programming
MH Abid
 
UNIT I OOP AND JAVA FUNDAMENTALS CONSTRUCTOR
mohanrajm63
 
12th ip CBSE chapter 4 oop in java notes complete
Harish Gyanani
 
Ad

More from Amar Jukuntla (19)

PDF
Singly linked list
Amar Jukuntla
 
PPTX
Types of files
Amar Jukuntla
 
PPTX
Hashing
Amar Jukuntla
 
PPTX
Planning
Amar Jukuntla
 
PDF
Unit 2
Amar Jukuntla
 
PDF
Problem Solving
Amar Jukuntla
 
PPTX
Intelligent Agents
Amar Jukuntla
 
PPTX
Introduction
Amar Jukuntla
 
PPTX
DFS
Amar Jukuntla
 
PPTX
Sorting
Amar Jukuntla
 
PPTX
Sorting
Amar Jukuntla
 
PPTX
Nature of open source
Amar Jukuntla
 
PPTX
Linux Directory System: Introduction
Amar Jukuntla
 
PPTX
Introduction to Data Structures
Amar Jukuntla
 
PPTX
Learning
Amar Jukuntla
 
PDF
First Order Logic resolution
Amar Jukuntla
 
PDF
First Order Logic
Amar Jukuntla
 
PDF
Agents1
Amar Jukuntla
 
Singly linked list
Amar Jukuntla
 
Types of files
Amar Jukuntla
 
Hashing
Amar Jukuntla
 
Planning
Amar Jukuntla
 
Problem Solving
Amar Jukuntla
 
Intelligent Agents
Amar Jukuntla
 
Introduction
Amar Jukuntla
 
Sorting
Amar Jukuntla
 
Sorting
Amar Jukuntla
 
Nature of open source
Amar Jukuntla
 
Linux Directory System: Introduction
Amar Jukuntla
 
Introduction to Data Structures
Amar Jukuntla
 
Learning
Amar Jukuntla
 
First Order Logic resolution
Amar Jukuntla
 
First Order Logic
Amar Jukuntla
 
Agents1
Amar Jukuntla
 

Recently uploaded (20)

PDF
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
PDF
2.Reshaping-Indias-Political-Map.ppt/pdf/8th class social science Exploring S...
Sandeep Swamy
 
PDF
Antianginal agents, Definition, Classification, MOA.pdf
Prerana Jadhav
 
PPTX
Artificial-Intelligence-in-Drug-Discovery by R D Jawarkar.pptx
Rahul Jawarkar
 
PPTX
Five Point Someone – Chetan Bhagat | Book Summary & Analysis by Bhupesh Kushwaha
Bhupesh Kushwaha
 
PDF
1.Natural-Resources-and-Their-Use.ppt pdf /8th class social science Exploring...
Sandeep Swamy
 
PPTX
Odoo 18 Sales_ Managing Quotation Validity
Celine George
 
PDF
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
PPTX
family health care settings home visit - unit 6 - chn 1 - gnm 1st year.pptx
Priyanshu Anand
 
DOCX
SAROCES Action-Plan FOR ARAL PROGRAM IN DEPED
Levenmartlacuna1
 
PPTX
CDH. pptx
AneetaSharma15
 
PDF
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
Nguyen Thanh Tu Collection
 
PPTX
Python-Application-in-Drug-Design by R D Jawarkar.pptx
Rahul Jawarkar
 
PPTX
TEF & EA Bsc Nursing 5th sem.....BBBpptx
AneetaSharma15
 
PDF
The Picture of Dorian Gray summary and depiction
opaliyahemel
 
PDF
The-Invisible-Living-World-Beyond-Our-Naked-Eye chapter 2.pdf/8th science cur...
Sandeep Swamy
 
PPTX
FSSAI (Food Safety and Standards Authority of India) & FDA (Food and Drug Adm...
Dr. Paindla Jyothirmai
 
PPTX
HISTORY COLLECTION FOR PSYCHIATRIC PATIENTS.pptx
PoojaSen20
 
PDF
PG-BPSDMP 2 TAHUN 2025PG-BPSDMP 2 TAHUN 2025.pdf
AshifaRamadhani
 
PDF
UTS Health Student Promotional Representative_Position Description.pdf
Faculty of Health, University of Technology Sydney
 
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
2.Reshaping-Indias-Political-Map.ppt/pdf/8th class social science Exploring S...
Sandeep Swamy
 
Antianginal agents, Definition, Classification, MOA.pdf
Prerana Jadhav
 
Artificial-Intelligence-in-Drug-Discovery by R D Jawarkar.pptx
Rahul Jawarkar
 
Five Point Someone – Chetan Bhagat | Book Summary & Analysis by Bhupesh Kushwaha
Bhupesh Kushwaha
 
1.Natural-Resources-and-Their-Use.ppt pdf /8th class social science Exploring...
Sandeep Swamy
 
Odoo 18 Sales_ Managing Quotation Validity
Celine George
 
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
family health care settings home visit - unit 6 - chn 1 - gnm 1st year.pptx
Priyanshu Anand
 
SAROCES Action-Plan FOR ARAL PROGRAM IN DEPED
Levenmartlacuna1
 
CDH. pptx
AneetaSharma15
 
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
Nguyen Thanh Tu Collection
 
Python-Application-in-Drug-Design by R D Jawarkar.pptx
Rahul Jawarkar
 
TEF & EA Bsc Nursing 5th sem.....BBBpptx
AneetaSharma15
 
The Picture of Dorian Gray summary and depiction
opaliyahemel
 
The-Invisible-Living-World-Beyond-Our-Naked-Eye chapter 2.pdf/8th science cur...
Sandeep Swamy
 
FSSAI (Food Safety and Standards Authority of India) & FDA (Food and Drug Adm...
Dr. Paindla Jyothirmai
 
HISTORY COLLECTION FOR PSYCHIATRIC PATIENTS.pptx
PoojaSen20
 
PG-BPSDMP 2 TAHUN 2025PG-BPSDMP 2 TAHUN 2025.pdf
AshifaRamadhani
 
UTS Health Student Promotional Representative_Position Description.pdf
Faculty of Health, University of Technology Sydney
 

Need of object oriented programming

  • 1. Need of Object Oriented Programming Amar Jukuntla
  • 3. Procedure Oriented Programming Object Oriented Programming
  • 4. Why Do We Need Object‐Oriented Programming? • Object Oriented Programming was developed because limitations were discovered in earlier approaches to programming. • To appreciate what OOP does, we need to understand what these limitations are and how they arose from traditional programming languages.
  • 6. POP Vs. OOP Procedure Oriented Programming Object Oriented Programming • In OOP, program is divided into parts called objects. • OOP has access specifiers named Public, Private, Protected, etc. • OOP provides Data Hiding so provides more security. • In OOP, overloading is possible in the form of Function Overloading and Operator Overloading. • In OOP, data can not move easily from function to function, it can be kept public or private so we can control the access of data. • Example of OOP are : C++, JAVA, VB.NET, C#.NET. • In POP, program is divided into small parts called functions. • POP does not have any access specifier. • POP does not have any proper way for hiding data so it is less secure. • In POP, Overloading is not possible. • In POP, Most function uses Global data for sharing that can be accessed freely from function to function in the system. • Example of POP are : C, VB, FORTRAN, Pascal.
  • 8. • Code Reuse and Recycling: Objects created for Object Oriented Programs can easily be reused in other programs. • Design Benefits: Large programs are very difficult to write. Object Oriented Programs force designers to go through an extensive planning phase, which makes for better designs with less flaws. In addition, once a program reaches a certain size, Object Oriented Programs are actually easier to program than non-Object Oriented ones. • Software Maintenance: Programs are not disposable. Legacy code must be dealt with on a daily basis, either to be improved upon (for a new version of an exist piece of software) or made to work with newer computers and software. An Object Oriented Program is much easier to modify and maintain than a non-Object Oriented Program. So although a lot of work is spent before the program is written, less work is needed to maintain it over time. • Simplicity
  • 9. Binding Binding • Binding means link between procedure call and code to be executed. • When a method call is resolved at compile time, it is known as STATIC BINDING. • While if method invocation is resolved at runtime, it is known as DYNAMIC BINDING OR LATE BINDING.
  • 10. Continue…  Because of polymorphism, a reference variable of type Parent can hold an object of type Child, which extends Parent. Now if you call a virtual method (not private, final or static) on this object, then Compiler can not find actual method, because it could be the one, which is defined in Parent class, or the one which Child has overridden. This call can only be resolved at runtime, when actual object is available. That's why this is known as RUNTIME OR DYNAMIC BINDING.  On the hand, private, static and final methods are resolved at compile time, because compiler knows that they can't be overridden and only possible methods are those, which are defined inside a class, whose reference variable is used to call this method. This is known as STATIC OR COMPILE TIME BINDING, all private, static and final methods are resolved using static binding.
  • 11. Continue… This concept is also closely related to method overloading and method overriding. As dynamic binding happens when method overriding is possibility and overloaded method calls are resolved at compile time, because they are always defined in same class.
  • 12. • Class • Class is a Blueprint for an Object. • Object • Object is instance of class or it is created from class. Attribute Behavior Name Walk Weight Run Height Talk Age Speak Gender Sleep P R O P E R T I E S M E T H O D S
  • 15. OOP Features • Encapsulation • Inheritance • Polymorphism • Abstraction • Method overloading • Method overriding
  • 16. OOP Features • Encapsulation • Encapsulation is the mechanism binds code and data together, and keeps both safe from outside interference and misuse. • Encapsulation is protective cover that prevents the code and data from being accessed by other code defined outside. • The process of wrapping up of data (properties) and behavior (methods) of an object into single unit. In plain English means to be enclosed in or as if in a capsule. • Advantages • The fields of a class can be made read-only or write-only. • A class can have total control over what is stored in its fields. • The user doesn’t know how the class stores data.
  • 17. Continue… Class encapsulation { public void method1() { int i=0; //variable String Name=“Variable”; //variable } public void method2() { int i=0; //variable String Name=“Variable”; //variable } }
  • 18. Continue… • Inheritance • Inheritance is the method creating the new class based on already existing class. • The new desired class is called subclass or child class. The existing class is called parent class or super class or base class. • Inheritance is the process by which one object acquires the properties of another object. • Example;
  • 20. Continue… • Polymorphism • Ability to change form is known as Polymorphism. • Polymorphism means “many forms”. • Method overloading, method overriding, interfaces are the example of Polymorphism. • Example:
  • 21. • Overloading • The same method name (method overloading) or operator symbol (operator overloading) can be used in different contents. • In method overloading, multiple methods having same name can appear in a class, but with different signature. • Java does not allow operator overloading yet + is overloaded for class string. The ‘+’ operator can be used for addition as well as string concatenation. • Example: • Add a1=new Add(); • Add a2=new Add(1,2); • Add a3=new Add(1,2,3);
  • 22. Continue… • Overriding • Defining a method in subclass having the same name as a method in the parent class is known as Overriding.
  • 23. Continue… • Abstraction • Abstraction specifies necessary and sufficient descriptions rather than implementation details. • Abstraction is an essential element of Object Oriented Programming. Through abstraction we can manage complexity. • Abstraction means hiding the unnecessary data from users. Abstraction defines only the essential characteristics of an object.
  • 25. Summary of Object Oriented Programming Concepts • Everything is an Object. • Computation is performed by objects communicating with each other, requesting that other objects perform actions. • Each object has its own memory, which consist of other objects. • Every object is an Instance of a class. A class simply represents a grouping of similar objects, such as integers or lists. • The class is the responsible for behaviour associated with an object. That is, all objects that are instance of the same class can perform the same action. • Classes are organized into a singly rooted tree structure, called the Inheritance hierarchy.