SlideShare a Scribd company logo
• Programming Paradigms-monolithic, procedural, structured and object oriented ,
• Features of Object oriented programming:
• classes, objects, methods and message passing, inheritance, polymorphism,
containership, reusability, delegation, data abstraction and encapsulation
• Classes and Objects:
• classes and objects, class method and self object,
• class variables and object variables,
• public and private members, class methods.
Zeal College of Engineering and Research
UNIT: V Object Oriented Programming Lectures:
08 Hrs
 Programming paradigm is an approach to solve problem using
some programming language.
 There are lots for programming language that are known but all
of them need to follow some strategy when they are
implemented and this methodology/strategy is paradigms.
 Various programming paradigms are
1. Monolithic Programming
2. Procedural Programming
3. Structural Programming
4. Object Oriented Programming
Programming Paradigm:
1. Monolithic Programming:
 The Program which contains a single function for the large
program is called monolithic program.
 A program is not divided into parts
 When program size increases it also increase difficulty.
 The program is sequential code and variable used is global data.
 goto statement is used for specific jump or flow control
statement.
Advantages:
 Easy to implement programs for small applications.
Disadvantages:
 If the program size is large then it is difficult to check error.
 Due to single function, the program is difficult to maintain.
 Code cannot be reused as it is written for specific problem.
2. Procedural Programming
 Procedural programming is a programming paradigm that uses
a linear or top-down approach.
 It relies on functions (procedures or subroutines) to perform
computations.
 Procedural programming is also known as imperative
programming.
 Large programs are divided into smaller programs known as
functions.
 Function access the global data.
 Top down approach
Advantages:
Simple and easy to write.
These language have low memory utilization.
Disadvantages:
Parallel programming is not possible.
Difficult to maintain programs.
Less productive.
 Also known as modular programming.
 The structured program mainly consist of
1. Selection Statements (if, if…else, if….elif…else statements)
2. Sequence Statements
3. Iteration Statements (loops- for, while)
 The program consist of structured and separate modules.
 Example: C, Pascal
3. Structural Programming:
Advantages:
 Program is easy to implement and maintain.
 Programs are problem based not the machine based.
Disadvantages:
 Conversion of program to machine code takes time.
Savitribai Phule Pune University -2019-20
4. Object Oriented Programming:
 The program is written as a collection of classes and object
which are meant for communication.
 The smallest and basic entity is object and all kind of
computation is performed on the objects only.
 Data and function are grouped into one entity called class.
 Programs are divided into classes and member functions.
Savitribai Phule Pune University -2019-20
Advantages:
 Importance is given to data.
 Bottom up Approach
 Data is hidden and can not be accessed by external functions.
Disadvantages:
 Complex to implement.
Savitribai Phule Pune University -2019-20
Difference between procedure oriented language and object oriented language.
Savitribai Phule Pune University -2019-20
Sr
No.
Procedural Oriented
Language
Object oriented language
1
Importance is given to
algorithm
Importance is given to data
2 Top down appraoch Bottom Up Approach
3
Programs are divided into
functions
Programs are divided into objects
4 Data is not hidden
Data is hidden and can not be
accessed by external functions
5 no access specifier
private, public, protected access
specifier is used.
6 less secure more secure
7 Example: C, Pascal Example: C++, Java ,Python
Programming languages and the programming paradigms
they support.
C++ - Monolithic, Structured-oriented, Procedural-oriented and, Object-
oriented programming paradigm
Python - Object Oriented, Procedure, and Functional programming
paradigms
Java - Procedural and object oriented paradigm
JavaScript - functional, object-oriented, procedural, and prototypal
programming
C# - imperative, declarative, functional, generic, object-oriented (class-
based), and component-oriented
PHP - Procedural, Object-Oriented, and functional paradigm
Ruby - procedural, object-oriented, and functional programming
Visual Basic - object-oriented
Features of Object oriented programming:
1. Class:
 class is a collection of objects.
 It is a logical entity that has data members and methods
(member functions).
 Once class has been defined, we can create any number of
objects belonging to that class.
 Ex: Mango, Apple and Orange are the members of Fruit class.
Syntax:
class classname:
Ex:
class Fruit:
Savitribai Phule Pune University -2019-20
Syntax:
class classname:
statement 1 #Data members and Member functions
statement 2
statement 3
Ex:
class Student:
rollno = 101 # Data members
name = "Priya"
def fun(self):
print('Hello') # Member Functions
Savitribai Phule Pune University -2019-20
Class Method and self object:
 The class methods are the function defined inside the class.
 The class method defines the first argument as self. This is always
defined as the first argument.
 If there is no argument in class method then only self is the argument for
that method.
 The self argument refers to object itself.
Savitribai Phule Pune University -2019-20
2. Object:
 Object is an instance of class. The object is an entity that has state and
behavior.
 It may be any real-world object like the person, place, bank account or
any item etc.
 Everything in Python is an object.
Syntax:
objectname = classname( )
Ex:
obj = Fruit( )
Savitribai Phule Pune University -2019-20
Savitribai Phule Pune University -2019-20
Sr
No.
Class Object
1 Class is collection of
objects. Class is collection
of data members and
member functions.
An object is instance of a class.
2 Class is a logical entity. Object is a physical entity.
3 Class is declared once. Object is created many times.
4 Class doesn't allocated
memory when it is
created.
Object allocates memory when it
is created.
5
Ex: Class: Fruit
Ex: Object: Apple, Banana,
Mango, Guava
3. Method:
 The method is a function that is associated with an object.
 There must be a special first argument self in all of method definitions.
 Any object type can have methods.
 There is usually a special method called __init__ ( )in most classes.
Savitribai Phule Pune University -2019-20
Example
1. Write a python program to find area of rectangle using class.
class Rect:
def __init__(self,length,breadth):
self.length=length
self.breadth=breadth
def Area(self):
print("Area of rectangle is: ",r1.length*r1.breadth)
r1 = Rect(160,120)
r1.Area()
OUTPUT:
Area of rectangle is: 19200
4. Inheritance:
 Inheritance is the process by which object of one class acquires
properties object of another class.
 reusability concept is used.
 Sub Class: The class that inherits properties from another class is called
Sub class or Derived Class.
 Super Class/ Base class: The class whose properties are inherited by
sub class is called Base Class or Super class.
Example: Dog, Cat, Cow can be Derived Class of Animal Base Class.
Savitribai Phule Pune University -2019-20
Single Level Inheritance
class E:
def U_test_Marks(self):
print("Unit test marks submitted successfully")
def C_test_Marks(self):
print("Class test marks submitted successfully")
f1 = E()
f1.U_test_Marks()
f1.C_test_Marks()
class F(E):
pass
f2 = F()
f2.U_test_Marks()
5. Reusability:
 The child class inherits some behaviour of parent class.
 For child class, it is not necessary to write code for inherited behavior,
i.e. child class directly used the methods written in parent class.
 For instance, the class Student inherits Person class. Hence the method
such as getName( ), getAddress( ) of parent class Person can be
directly used by the Student class. The Student class can have its own
additional method such as getMarks( ).
 Thus methods can be written once and can be reused.
Savitribai Phule Pune University -2019-20
6. Polymorphism:
 Ability to perform more than one forms.
 An operation may exhibit different behaviors in different instances.
 The behavior depends upon the types of data used in the operation.
Savitribai Phule Pune University -2019-20
1. Operator Overloading
2. Method Overriding
Method Overriding
class E:
def name1(self,name):
print(name)
f1 = E()
f1.name1("punam")
class F:
def name1 (self,name):
print(name)
f2 = F()
f1. name1("punamsawale")
7. Containership:
 one class contain the object of another class.
 This type of relationship between classes is known as containership or
has a relationship.
 The class which contains the object and members of another class in this
kind of relationship is called a container class.
Ex: 1) computer system has a hard disk
2) car has an Engine, chassis, steering wheels.
Savitribai Phule Pune University -2019-20
8. Delegation:
 This is feature of object oriented programming by which one class
depends upon the other class.
 It is represented by has a relationship.
 In composition – The child cannot exist if parent class is not present i.e.
child class depends on parent class. It is strong relationship.
 In delegation there is dependency of one class on another but even if
the parent class is not present the dependent class exists.
 Ex: A teacher may belong to multiple departments. So, Teacher is a part
of multiple departments. But lets say if we “delete” a Department, the
Teacher will still be there. This is delegation.
 A school can contain multiple classrooms. Now if we “delete” the
school, the classrooms will automatically be deleted. This is
composition.
Savitribai Phule Pune University -2019-20
9. Data Abstraction and Encapsulation:
1. Data abstraction
 Data abstraction means representing only essential features by hiding all
the implementation details.
 Class is entity used for data abstraction.
 The methods are defined in class. From main function we can access
these functionalities using objects.
2. Encapsulation
 Encapsulation means binding of data and methods in single
entity called class.
 The data inside the class is accessible by the function in same class.
 Public and Private access specifier is used for data protection
 It is normally not accessible from outside of the component.
Savitribai Phule Pune University -2019-20
Savitribai Phule Pune University -2019-20
Savitribai Phule Pune University -2019-20
Sr
No.
Data abstraction Data encapsulation
1
Representing only essential
features by hiding all the
implementation details.
binding of data and methods in
single entity called class.
2
It is used in software design
phase.
It is used in software
implementation phase.
3
abstraction using Abstract
Class.
encapsulation using Access
Modifiers (Public, Protected &
Private.)
4
Depends on object data
type.
independent on object data type.
5
Focus mainly on what
should be done.
Focus primarily on how it should
be done.
Class Variables and object variables
1. Class variable
 The variables at the class level are called class variables.
 The class variables are shared by all the instances of the class i.e. same
value is used for every instance or object
 There is single copy of class variable which is shared among all the
objects, hence changes made by an object in a single copy of class
variable is reflected in all other objects.
2. Object Variable
 The variable owned by each object is called object variable.
 For each object or instance of class, the instance variables are different.
 Object variables are defined in methods.
 The changes made in one object variable will not be reflected for other
object variable.
Savitribai Phule Pune University -2019-20
class PPS:
Attendance = 0 #class variable
def __init__(self, var):
PPS.Attendance += 1
self.var = var #object variable
print("Lecture No: ", PPS.Attendance)
print("Total student present for lecture 1 : ", var)
obj1 = PPS(50)
obj2 = PPS(52)
obj3 = PPS(55)
Savitribai Phule Pune University -2019-20
Output:
Lecture No: 1
Total student present for lecture 1 : 50
Lecture No: 2
Total student present for lecture 1 : 52
Lecture No: 3
Total student present for lecture 1 : 55
Savitribai Phule Pune University -2019-20
Public and private members:
 Public variables are those variables that are defined in the class and can be
accessed from within class and from outside the class using dot operator.
 All members in a python class are public by default.
 Private variables are those variables that are defined in the class but can
be accessible by the methods of that class only.
 The private variables are used with double underscore( __ ) prefix.
 Protected variables :The members of a class that are declared protected
are only accessible to a class derived from it.
 Data members of a class are declared protected by adding a single
underscore (_) symbol before the data member of that class.
Savitribai Phule Pune University -2019-20
class ABC:
def __init__(self, var1, var2):
self.var1 = var1
self.__var2 = var2
def display(self):
print("From class method, variable 1 is: ", self.var1)
print("From class method, variable 2 is: ", self.__var2)
obj = ABC(10,20)
obj.display()
print("From class method, variable 1 is: ", obj.var1)
print("From class method, variable 2 is: ", obj.__var2)
Output:
From class method, variable 1 is: 10
From class method, variable 2 is: 20
From class method, variable 1 is: 10
Traceback (most recent call last)
---> 13 print("From class method, variable 2 is: ", obj.__var2)
AttributeError: 'ABC' object has no attribute '__var2'
Savitribai Phule Pune University -2019-20
Savitribai Phule Pune University -2019-20
To remove above error, to access private variable use
following syntax:
objectname._classname__privatevariable
Ex:
print("From class method, variable 2 is: ",obj._ABC__var2)
Savitribai Phule Pune University -2019-20
To access private method, use following syntax:
objectname._classname__privatemethodname
Ex:
class ABC:
def __init__(self, var):
self.__var = var
def __display(self):
print("From class method,variable is:",
self.__var)
obj = ABC(10)
obj._ABC__display()
Output:
From class method, variable is: 10
Savitribai Phule Pune University -2019-20
Write a program in python to Create class EMPLOYEE for storing details (Name,
Designation, gender, Date of Joining and Salary). Define function members to display all
EMPLOYEE details.
class Employee:
name = []
designation = []
gender = []
doj = []
salary = []
def __init__(self):
for i in range(3):
self.name.append(input("Enter the name:"))
self.designation.append(input("Enter the Designation:"))
self.gender.append(input("Enter the gender:"))
self.doj.append(input("Enter the doj:"))
self.salary.append(int(input("Enter the salary:")))
Savitribai Phule Pune University -2019-20
def display(self):
print("-------------Details of Employee-----------------")
print(" NamettDesignationtGenderttDate of
JoiningttSalary ")
print("-------------------------------------------------")
for i in range(3):
print(self.name[i],"tt",self.designation[i],"t",
self.gender[i],"tt",self.doj[i],"tt",self.salary[i] )
e = Employee()
e.display()
Output:
Enter the name:Sakshi
Enter the Designation:Manager
Enter the gender:Male
Enter the doj:10-06-2001
Enter the salary:50000
Savitribai Phule Pune University -2019-20
Enter the name:Rohit
Enter the Designation:Developer
Enter the gender:Male
Enter the doj:10-05-2009
Enter the salary:35000
Enter the name:Riya
Enter the Designation:Tester
Enter the gender:Female
Enter the doj:10-02-2012
Enter the salary:20000
----------------------Details of Employee--------------------------
Name Designation Gender Date of Joining Salary
-------------------------------------------------------------------
Sakshi Manager Male 10-06-2001 50000
Rohit Developer Male 10-05-2009 35000
Riya Tester Female 10-02-2012 20000

More Related Content

Similar to Unit-V.pptx

MCA NOTES.pdf
MCA NOTES.pdfMCA NOTES.pdf
MCA NOTES.pdf
RAJASEKHARV10
 
Oops concepts || Object Oriented Programming Concepts in Java
Oops concepts || Object Oriented Programming Concepts in JavaOops concepts || Object Oriented Programming Concepts in Java
Oops concepts || Object Oriented Programming Concepts in Java
Madishetty Prathibha
 
Php oop (1)
Php oop (1)Php oop (1)
Php oop (1)
Sudip Simkhada
 
EEE oops Vth semester viva questions with answer
EEE oops Vth semester viva questions with answerEEE oops Vth semester viva questions with answer
EEE oops Vth semester viva questions with answer
Jeba Moses
 
OOP
OOPOOP
CPP-Unit 1.pptx
CPP-Unit 1.pptxCPP-Unit 1.pptx
CPP-Unit 1.pptx
YashKoli22
 
POP vs OOP Introduction
POP vs OOP IntroductionPOP vs OOP Introduction
POP vs OOP Introduction
Hashni T
 
Unit 5.ppt
Unit 5.pptUnit 5.ppt
Oops
OopsOops
Chapter1 introduction
Chapter1 introductionChapter1 introduction
Chapter1 introduction
Jeevan Acharya
 
Oops concepts
Oops conceptsOops concepts
Oops concepts
ACCESS Health Digital
 
UNIT1-JAVA.pptx
UNIT1-JAVA.pptxUNIT1-JAVA.pptx
UNIT1-JAVA.pptx
ssuser99ca78
 
Cs2305 programming paradigms lecturer notes
Cs2305   programming paradigms lecturer notesCs2305   programming paradigms lecturer notes
Cs2305 programming paradigms lecturer notes
Saravanakumar viswanathan
 
Ch 1 Introduction to Object Oriented Programming.pptx
Ch 1 Introduction to Object Oriented Programming.pptxCh 1 Introduction to Object Oriented Programming.pptx
Ch 1 Introduction to Object Oriented Programming.pptx
MahiDivya
 
Object Oriented Programming Overview for the PeopleSoft Developer
Object Oriented Programming Overview for the PeopleSoft DeveloperObject Oriented Programming Overview for the PeopleSoft Developer
Object Oriented Programming Overview for the PeopleSoft Developer
Lee Greffin
 
C++ & VISUAL C++
C++ & VISUAL C++ C++ & VISUAL C++
C++ & VISUAL C++
Makaha Rutendo
 
Summer Training Project On C++
Summer Training Project On  C++Summer Training Project On  C++
Summer Training Project On C++
KAUSHAL KUMAR JHA
 
java oops compilation object class inheritance.pptx
java oops compilation object class inheritance.pptxjava oops compilation object class inheritance.pptx
java oops compilation object class inheritance.pptx
CHERUKURIYUVARAJU209
 
Introduction to OOP concepts
Introduction to OOP conceptsIntroduction to OOP concepts
Introduction to OOP concepts
Ahmed Farag
 
c++session 1.pptx
c++session 1.pptxc++session 1.pptx
c++session 1.pptx
PadmaN24
 

Similar to Unit-V.pptx (20)

MCA NOTES.pdf
MCA NOTES.pdfMCA NOTES.pdf
MCA NOTES.pdf
 
Oops concepts || Object Oriented Programming Concepts in Java
Oops concepts || Object Oriented Programming Concepts in JavaOops concepts || Object Oriented Programming Concepts in Java
Oops concepts || Object Oriented Programming Concepts in Java
 
Php oop (1)
Php oop (1)Php oop (1)
Php oop (1)
 
EEE oops Vth semester viva questions with answer
EEE oops Vth semester viva questions with answerEEE oops Vth semester viva questions with answer
EEE oops Vth semester viva questions with answer
 
OOP
OOPOOP
OOP
 
CPP-Unit 1.pptx
CPP-Unit 1.pptxCPP-Unit 1.pptx
CPP-Unit 1.pptx
 
POP vs OOP Introduction
POP vs OOP IntroductionPOP vs OOP Introduction
POP vs OOP Introduction
 
Unit 5.ppt
Unit 5.pptUnit 5.ppt
Unit 5.ppt
 
Oops
OopsOops
Oops
 
Chapter1 introduction
Chapter1 introductionChapter1 introduction
Chapter1 introduction
 
Oops concepts
Oops conceptsOops concepts
Oops concepts
 
UNIT1-JAVA.pptx
UNIT1-JAVA.pptxUNIT1-JAVA.pptx
UNIT1-JAVA.pptx
 
Cs2305 programming paradigms lecturer notes
Cs2305   programming paradigms lecturer notesCs2305   programming paradigms lecturer notes
Cs2305 programming paradigms lecturer notes
 
Ch 1 Introduction to Object Oriented Programming.pptx
Ch 1 Introduction to Object Oriented Programming.pptxCh 1 Introduction to Object Oriented Programming.pptx
Ch 1 Introduction to Object Oriented Programming.pptx
 
Object Oriented Programming Overview for the PeopleSoft Developer
Object Oriented Programming Overview for the PeopleSoft DeveloperObject Oriented Programming Overview for the PeopleSoft Developer
Object Oriented Programming Overview for the PeopleSoft Developer
 
C++ & VISUAL C++
C++ & VISUAL C++ C++ & VISUAL C++
C++ & VISUAL C++
 
Summer Training Project On C++
Summer Training Project On  C++Summer Training Project On  C++
Summer Training Project On C++
 
java oops compilation object class inheritance.pptx
java oops compilation object class inheritance.pptxjava oops compilation object class inheritance.pptx
java oops compilation object class inheritance.pptx
 
Introduction to OOP concepts
Introduction to OOP conceptsIntroduction to OOP concepts
Introduction to OOP concepts
 
c++session 1.pptx
c++session 1.pptxc++session 1.pptx
c++session 1.pptx
 

Recently uploaded

Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
Celine George
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
vaibhavrinwa19
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
DhatriParmar
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
camakaiclarkmusic
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
Pavel ( NSTU)
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
Krisztián Száraz
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
SACHIN R KONDAGURI
 
The Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptxThe Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptx
DhatriParmar
 
Chapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptxChapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
deeptiverma2406
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
Academy of Science of South Africa
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
heathfieldcps1
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
Balvir Singh
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
Delapenabediema
 
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdfMASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
goswamiyash170123
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
Nguyen Thanh Tu Collection
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Akanksha trivedi rama nursing college kanpur.
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
JosvitaDsouza2
 
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat  Leveraging AI for Diversity, Equity, and InclusionExecutive Directors Chat  Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
TechSoup
 

Recently uploaded (20)

Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
 
The Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptxThe Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptx
 
Chapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptxChapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptx
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
 
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdfMASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
 
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat  Leveraging AI for Diversity, Equity, and InclusionExecutive Directors Chat  Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
 

Unit-V.pptx

  • 1. • Programming Paradigms-monolithic, procedural, structured and object oriented , • Features of Object oriented programming: • classes, objects, methods and message passing, inheritance, polymorphism, containership, reusability, delegation, data abstraction and encapsulation • Classes and Objects: • classes and objects, class method and self object, • class variables and object variables, • public and private members, class methods. Zeal College of Engineering and Research UNIT: V Object Oriented Programming Lectures: 08 Hrs
  • 2.  Programming paradigm is an approach to solve problem using some programming language.  There are lots for programming language that are known but all of them need to follow some strategy when they are implemented and this methodology/strategy is paradigms.  Various programming paradigms are 1. Monolithic Programming 2. Procedural Programming 3. Structural Programming 4. Object Oriented Programming Programming Paradigm:
  • 3. 1. Monolithic Programming:  The Program which contains a single function for the large program is called monolithic program.  A program is not divided into parts  When program size increases it also increase difficulty.  The program is sequential code and variable used is global data.  goto statement is used for specific jump or flow control statement.
  • 4. Advantages:  Easy to implement programs for small applications. Disadvantages:  If the program size is large then it is difficult to check error.  Due to single function, the program is difficult to maintain.  Code cannot be reused as it is written for specific problem.
  • 5. 2. Procedural Programming  Procedural programming is a programming paradigm that uses a linear or top-down approach.  It relies on functions (procedures or subroutines) to perform computations.  Procedural programming is also known as imperative programming.  Large programs are divided into smaller programs known as functions.  Function access the global data.  Top down approach
  • 6. Advantages: Simple and easy to write. These language have low memory utilization. Disadvantages: Parallel programming is not possible. Difficult to maintain programs. Less productive.
  • 7.  Also known as modular programming.  The structured program mainly consist of 1. Selection Statements (if, if…else, if….elif…else statements) 2. Sequence Statements 3. Iteration Statements (loops- for, while)  The program consist of structured and separate modules.  Example: C, Pascal 3. Structural Programming:
  • 8. Advantages:  Program is easy to implement and maintain.  Programs are problem based not the machine based. Disadvantages:  Conversion of program to machine code takes time. Savitribai Phule Pune University -2019-20
  • 9. 4. Object Oriented Programming:  The program is written as a collection of classes and object which are meant for communication.  The smallest and basic entity is object and all kind of computation is performed on the objects only.  Data and function are grouped into one entity called class.  Programs are divided into classes and member functions. Savitribai Phule Pune University -2019-20
  • 10. Advantages:  Importance is given to data.  Bottom up Approach  Data is hidden and can not be accessed by external functions. Disadvantages:  Complex to implement. Savitribai Phule Pune University -2019-20
  • 11. Difference between procedure oriented language and object oriented language. Savitribai Phule Pune University -2019-20 Sr No. Procedural Oriented Language Object oriented language 1 Importance is given to algorithm Importance is given to data 2 Top down appraoch Bottom Up Approach 3 Programs are divided into functions Programs are divided into objects 4 Data is not hidden Data is hidden and can not be accessed by external functions 5 no access specifier private, public, protected access specifier is used. 6 less secure more secure 7 Example: C, Pascal Example: C++, Java ,Python
  • 12. Programming languages and the programming paradigms they support. C++ - Monolithic, Structured-oriented, Procedural-oriented and, Object- oriented programming paradigm Python - Object Oriented, Procedure, and Functional programming paradigms Java - Procedural and object oriented paradigm JavaScript - functional, object-oriented, procedural, and prototypal programming C# - imperative, declarative, functional, generic, object-oriented (class- based), and component-oriented PHP - Procedural, Object-Oriented, and functional paradigm Ruby - procedural, object-oriented, and functional programming Visual Basic - object-oriented
  • 13. Features of Object oriented programming: 1. Class:  class is a collection of objects.  It is a logical entity that has data members and methods (member functions).  Once class has been defined, we can create any number of objects belonging to that class.  Ex: Mango, Apple and Orange are the members of Fruit class. Syntax: class classname: Ex: class Fruit: Savitribai Phule Pune University -2019-20
  • 14. Syntax: class classname: statement 1 #Data members and Member functions statement 2 statement 3 Ex: class Student: rollno = 101 # Data members name = "Priya" def fun(self): print('Hello') # Member Functions Savitribai Phule Pune University -2019-20
  • 15. Class Method and self object:  The class methods are the function defined inside the class.  The class method defines the first argument as self. This is always defined as the first argument.  If there is no argument in class method then only self is the argument for that method.  The self argument refers to object itself. Savitribai Phule Pune University -2019-20
  • 16. 2. Object:  Object is an instance of class. The object is an entity that has state and behavior.  It may be any real-world object like the person, place, bank account or any item etc.  Everything in Python is an object. Syntax: objectname = classname( ) Ex: obj = Fruit( ) Savitribai Phule Pune University -2019-20
  • 17. Savitribai Phule Pune University -2019-20 Sr No. Class Object 1 Class is collection of objects. Class is collection of data members and member functions. An object is instance of a class. 2 Class is a logical entity. Object is a physical entity. 3 Class is declared once. Object is created many times. 4 Class doesn't allocated memory when it is created. Object allocates memory when it is created. 5 Ex: Class: Fruit Ex: Object: Apple, Banana, Mango, Guava
  • 18. 3. Method:  The method is a function that is associated with an object.  There must be a special first argument self in all of method definitions.  Any object type can have methods.  There is usually a special method called __init__ ( )in most classes. Savitribai Phule Pune University -2019-20
  • 19. Example 1. Write a python program to find area of rectangle using class. class Rect: def __init__(self,length,breadth): self.length=length self.breadth=breadth def Area(self): print("Area of rectangle is: ",r1.length*r1.breadth) r1 = Rect(160,120) r1.Area() OUTPUT: Area of rectangle is: 19200
  • 20. 4. Inheritance:  Inheritance is the process by which object of one class acquires properties object of another class.  reusability concept is used.  Sub Class: The class that inherits properties from another class is called Sub class or Derived Class.  Super Class/ Base class: The class whose properties are inherited by sub class is called Base Class or Super class. Example: Dog, Cat, Cow can be Derived Class of Animal Base Class. Savitribai Phule Pune University -2019-20
  • 21. Single Level Inheritance class E: def U_test_Marks(self): print("Unit test marks submitted successfully") def C_test_Marks(self): print("Class test marks submitted successfully") f1 = E() f1.U_test_Marks() f1.C_test_Marks() class F(E): pass f2 = F() f2.U_test_Marks()
  • 22. 5. Reusability:  The child class inherits some behaviour of parent class.  For child class, it is not necessary to write code for inherited behavior, i.e. child class directly used the methods written in parent class.  For instance, the class Student inherits Person class. Hence the method such as getName( ), getAddress( ) of parent class Person can be directly used by the Student class. The Student class can have its own additional method such as getMarks( ).  Thus methods can be written once and can be reused. Savitribai Phule Pune University -2019-20
  • 23. 6. Polymorphism:  Ability to perform more than one forms.  An operation may exhibit different behaviors in different instances.  The behavior depends upon the types of data used in the operation. Savitribai Phule Pune University -2019-20 1. Operator Overloading 2. Method Overriding
  • 24. Method Overriding class E: def name1(self,name): print(name) f1 = E() f1.name1("punam") class F: def name1 (self,name): print(name) f2 = F() f1. name1("punamsawale")
  • 25. 7. Containership:  one class contain the object of another class.  This type of relationship between classes is known as containership or has a relationship.  The class which contains the object and members of another class in this kind of relationship is called a container class. Ex: 1) computer system has a hard disk 2) car has an Engine, chassis, steering wheels. Savitribai Phule Pune University -2019-20
  • 26.
  • 27. 8. Delegation:  This is feature of object oriented programming by which one class depends upon the other class.  It is represented by has a relationship.  In composition – The child cannot exist if parent class is not present i.e. child class depends on parent class. It is strong relationship.  In delegation there is dependency of one class on another but even if the parent class is not present the dependent class exists.  Ex: A teacher may belong to multiple departments. So, Teacher is a part of multiple departments. But lets say if we “delete” a Department, the Teacher will still be there. This is delegation.  A school can contain multiple classrooms. Now if we “delete” the school, the classrooms will automatically be deleted. This is composition. Savitribai Phule Pune University -2019-20
  • 28. 9. Data Abstraction and Encapsulation: 1. Data abstraction  Data abstraction means representing only essential features by hiding all the implementation details.  Class is entity used for data abstraction.  The methods are defined in class. From main function we can access these functionalities using objects. 2. Encapsulation  Encapsulation means binding of data and methods in single entity called class.  The data inside the class is accessible by the function in same class.  Public and Private access specifier is used for data protection  It is normally not accessible from outside of the component. Savitribai Phule Pune University -2019-20
  • 29. Savitribai Phule Pune University -2019-20
  • 30. Savitribai Phule Pune University -2019-20 Sr No. Data abstraction Data encapsulation 1 Representing only essential features by hiding all the implementation details. binding of data and methods in single entity called class. 2 It is used in software design phase. It is used in software implementation phase. 3 abstraction using Abstract Class. encapsulation using Access Modifiers (Public, Protected & Private.) 4 Depends on object data type. independent on object data type. 5 Focus mainly on what should be done. Focus primarily on how it should be done.
  • 31. Class Variables and object variables 1. Class variable  The variables at the class level are called class variables.  The class variables are shared by all the instances of the class i.e. same value is used for every instance or object  There is single copy of class variable which is shared among all the objects, hence changes made by an object in a single copy of class variable is reflected in all other objects. 2. Object Variable  The variable owned by each object is called object variable.  For each object or instance of class, the instance variables are different.  Object variables are defined in methods.  The changes made in one object variable will not be reflected for other object variable. Savitribai Phule Pune University -2019-20
  • 32. class PPS: Attendance = 0 #class variable def __init__(self, var): PPS.Attendance += 1 self.var = var #object variable print("Lecture No: ", PPS.Attendance) print("Total student present for lecture 1 : ", var) obj1 = PPS(50) obj2 = PPS(52) obj3 = PPS(55) Savitribai Phule Pune University -2019-20
  • 33. Output: Lecture No: 1 Total student present for lecture 1 : 50 Lecture No: 2 Total student present for lecture 1 : 52 Lecture No: 3 Total student present for lecture 1 : 55 Savitribai Phule Pune University -2019-20
  • 34. Public and private members:  Public variables are those variables that are defined in the class and can be accessed from within class and from outside the class using dot operator.  All members in a python class are public by default.  Private variables are those variables that are defined in the class but can be accessible by the methods of that class only.  The private variables are used with double underscore( __ ) prefix.  Protected variables :The members of a class that are declared protected are only accessible to a class derived from it.  Data members of a class are declared protected by adding a single underscore (_) symbol before the data member of that class. Savitribai Phule Pune University -2019-20
  • 35. class ABC: def __init__(self, var1, var2): self.var1 = var1 self.__var2 = var2 def display(self): print("From class method, variable 1 is: ", self.var1) print("From class method, variable 2 is: ", self.__var2) obj = ABC(10,20) obj.display() print("From class method, variable 1 is: ", obj.var1) print("From class method, variable 2 is: ", obj.__var2) Output: From class method, variable 1 is: 10 From class method, variable 2 is: 20 From class method, variable 1 is: 10 Traceback (most recent call last) ---> 13 print("From class method, variable 2 is: ", obj.__var2) AttributeError: 'ABC' object has no attribute '__var2' Savitribai Phule Pune University -2019-20
  • 36. Savitribai Phule Pune University -2019-20 To remove above error, to access private variable use following syntax: objectname._classname__privatevariable Ex: print("From class method, variable 2 is: ",obj._ABC__var2)
  • 37. Savitribai Phule Pune University -2019-20 To access private method, use following syntax: objectname._classname__privatemethodname Ex: class ABC: def __init__(self, var): self.__var = var def __display(self): print("From class method,variable is:", self.__var) obj = ABC(10) obj._ABC__display() Output: From class method, variable is: 10
  • 38. Savitribai Phule Pune University -2019-20 Write a program in python to Create class EMPLOYEE for storing details (Name, Designation, gender, Date of Joining and Salary). Define function members to display all EMPLOYEE details. class Employee: name = [] designation = [] gender = [] doj = [] salary = [] def __init__(self): for i in range(3): self.name.append(input("Enter the name:")) self.designation.append(input("Enter the Designation:")) self.gender.append(input("Enter the gender:")) self.doj.append(input("Enter the doj:")) self.salary.append(int(input("Enter the salary:")))
  • 39. Savitribai Phule Pune University -2019-20 def display(self): print("-------------Details of Employee-----------------") print(" NamettDesignationtGenderttDate of JoiningttSalary ") print("-------------------------------------------------") for i in range(3): print(self.name[i],"tt",self.designation[i],"t", self.gender[i],"tt",self.doj[i],"tt",self.salary[i] ) e = Employee() e.display() Output: Enter the name:Sakshi Enter the Designation:Manager Enter the gender:Male Enter the doj:10-06-2001 Enter the salary:50000
  • 40. Savitribai Phule Pune University -2019-20 Enter the name:Rohit Enter the Designation:Developer Enter the gender:Male Enter the doj:10-05-2009 Enter the salary:35000 Enter the name:Riya Enter the Designation:Tester Enter the gender:Female Enter the doj:10-02-2012 Enter the salary:20000 ----------------------Details of Employee-------------------------- Name Designation Gender Date of Joining Salary ------------------------------------------------------------------- Sakshi Manager Male 10-06-2001 50000 Rohit Developer Male 10-05-2009 35000 Riya Tester Female 10-02-2012 20000