SlideShare a Scribd company logo
1 of 35
C H A P T E R  S E V E N More Object-Oriented Programming
[object Object],[object Object],[object Object],[object Object],[object Object],Modules
Why OO-Programming? ,[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],The Evolution of OOPS
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Keys to OO Programming
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Keys to OO Programming
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Initialization & Finalization of Objects
An Example in C++
An Example in C++
References & Values ,[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],Initialization & Finalization of Objects
Classes ,[object Object],[object Object],[object Object],[object Object]
Yikes! Huge families of classes are used to implement language features. This is from Smalltalk-80.
C++ Classes ,[object Object],[object Object],[object Object],[object Object],[object Object]
C++ Classes ,[object Object],[object Object],[object Object],[object Object],[object Object]
C++ Classes ,[object Object],[object Object]
Dynamic Method Binding
Dynamic Method Binding
Member Lookup
Virtual Methods
Inheritance
Multiple Inheritance
Multiple Inheritance
Multiple Inheritance The vtable entry contains the “this” correction for each method
Replicated Inheritance
Replicated Inheritance
Shared Multiple Inheritance “ A new opportunity for ambiguity and additional implementation complexity”
Shared Multiple Inheritance
Shared Multiple Inheritance
Mixed Inheritance ,[object Object],[object Object],[object Object]
Mixed Inheritance
Summary ,[object Object],[object Object],[object Object]
Summary ,[object Object],[object Object],[object Object],[object Object],[object Object]
Summary ,[object Object],[object Object],[object Object]
Next time… Functional Programming

More Related Content

What's hot

java-06inheritance
java-06inheritancejava-06inheritance
java-06inheritance
Arjun Shanka
 
Oo abap-sap-1206973306636228-5
Oo abap-sap-1206973306636228-5Oo abap-sap-1206973306636228-5
Oo abap-sap-1206973306636228-5
prakash185645
 
Object oriented basics
Object oriented basicsObject oriented basics
Object oriented basics
vamshimahi
 
Lecture13 abap on line
Lecture13 abap on lineLecture13 abap on line
Lecture13 abap on line
Milind Patil
 

What's hot (20)

OBJECT ORIENTED ROGRAMMING With Question And Answer Full
OBJECT ORIENTED ROGRAMMING With Question And Answer  FullOBJECT ORIENTED ROGRAMMING With Question And Answer  Full
OBJECT ORIENTED ROGRAMMING With Question And Answer Full
 
oops concept in java | object oriented programming in java
oops concept in java | object oriented programming in javaoops concept in java | object oriented programming in java
oops concept in java | object oriented programming in java
 
java-06inheritance
java-06inheritancejava-06inheritance
java-06inheritance
 
Oo abap-sap-1206973306636228-5
Oo abap-sap-1206973306636228-5Oo abap-sap-1206973306636228-5
Oo abap-sap-1206973306636228-5
 
Suga java training_with_footer
Suga java training_with_footerSuga java training_with_footer
Suga java training_with_footer
 
Oops in vb
Oops in vbOops in vb
Oops in vb
 
Hp syllabus
Hp syllabusHp syllabus
Hp syllabus
 
Object oriented basics
Object oriented basicsObject oriented basics
Object oriented basics
 
Lecture 8
Lecture 8Lecture 8
Lecture 8
 
Polymorphism presentation in java
Polymorphism presentation in javaPolymorphism presentation in java
Polymorphism presentation in java
 
Overloading and overriding in vb.net
Overloading and overriding in vb.netOverloading and overriding in vb.net
Overloading and overriding in vb.net
 
Polymorphism and interface in vb.net
Polymorphism and interface in vb.netPolymorphism and interface in vb.net
Polymorphism and interface in vb.net
 
java interface and packages
java interface and packagesjava interface and packages
java interface and packages
 
Polymorphism in oop
Polymorphism in oopPolymorphism in oop
Polymorphism in oop
 
Lecture13 abap on line
Lecture13 abap on lineLecture13 abap on line
Lecture13 abap on line
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
 
Oop
OopOop
Oop
 
Inheritance and Polymorphism Java
Inheritance and Polymorphism JavaInheritance and Polymorphism Java
Inheritance and Polymorphism Java
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
 
Unit 3 Java
Unit 3 JavaUnit 3 Java
Unit 3 Java
 

Viewers also liked

emotional intelligence
emotional intelligence emotional intelligence
emotional intelligence
humaapkeliye
 

Viewers also liked (8)

Emotional intelligence presentation ppt
Emotional intelligence presentation pptEmotional intelligence presentation ppt
Emotional intelligence presentation ppt
 
emotional intelligence
emotional intelligence emotional intelligence
emotional intelligence
 
Search Inside Yourself (Mindfulness Based Emotional Intelligence)
Search Inside Yourself (Mindfulness Based Emotional Intelligence)Search Inside Yourself (Mindfulness Based Emotional Intelligence)
Search Inside Yourself (Mindfulness Based Emotional Intelligence)
 
Emotional Intelligence and Job Performance
Emotional Intelligence and Job Performance  Emotional Intelligence and Job Performance
Emotional Intelligence and Job Performance
 
Emotional Intelligence at Work
Emotional Intelligence at WorkEmotional Intelligence at Work
Emotional Intelligence at Work
 
Emotional intelligence
Emotional intelligenceEmotional intelligence
Emotional intelligence
 
Skills For Developing Emotional Intelligence
Skills For Developing Emotional IntelligenceSkills For Developing Emotional Intelligence
Skills For Developing Emotional Intelligence
 
Working with Emotional Intelligence
Working with Emotional IntelligenceWorking with Emotional Intelligence
Working with Emotional Intelligence
 

Similar to Csci360 20

Understanding And Using Reflection
Understanding And Using ReflectionUnderstanding And Using Reflection
Understanding And Using Reflection
Ganesh Samarthyam
 
Object Oriented Programming with Java
Object Oriented Programming with JavaObject Oriented Programming with Java
Object Oriented Programming with Java
backdoor
 
Future Programming Language
Future Programming LanguageFuture Programming Language
Future Programming Language
YLTO
 
OOP-Advanced Programming with c++
OOP-Advanced Programming with c++OOP-Advanced Programming with c++
OOP-Advanced Programming with c++
Mohamed Essam
 
P Training Presentation
P Training PresentationP Training Presentation
P Training Presentation
Gaurav Tyagi
 

Similar to Csci360 20 (20)

Understanding And Using Reflection
Understanding And Using ReflectionUnderstanding And Using Reflection
Understanding And Using Reflection
 
Patterns in Python
Patterns in PythonPatterns in Python
Patterns in Python
 
C# interview-questions
C# interview-questionsC# interview-questions
C# interview-questions
 
Viva file
Viva fileViva file
Viva file
 
Core_Java_Interview.pdf
Core_Java_Interview.pdfCore_Java_Interview.pdf
Core_Java_Interview.pdf
 
Object Oriented Programming In .Net
Object Oriented Programming In .NetObject Oriented Programming In .Net
Object Oriented Programming In .Net
 
Classes and Objects
Classes and ObjectsClasses and Objects
Classes and Objects
 
Object Oriented Programming with Java
Object Oriented Programming with JavaObject Oriented Programming with Java
Object Oriented Programming with Java
 
Java mcq
Java mcqJava mcq
Java mcq
 
OOP interview questions & answers.
OOP interview questions & answers.OOP interview questions & answers.
OOP interview questions & answers.
 
Andy On Closures
Andy On ClosuresAndy On Closures
Andy On Closures
 
Future Programming Language
Future Programming LanguageFuture Programming Language
Future Programming Language
 
14274730 (1).ppt
14274730 (1).ppt14274730 (1).ppt
14274730 (1).ppt
 
OOP-Advanced Programming with c++
OOP-Advanced Programming with c++OOP-Advanced Programming with c++
OOP-Advanced Programming with c++
 
Summer Training Project On C++
Summer Training Project On  C++Summer Training Project On  C++
Summer Training Project On C++
 
Oop
OopOop
Oop
 
Design Pattern Mastery - Momentum Dev Con 19 Apr 2018
Design Pattern Mastery - Momentum Dev Con 19 Apr 2018Design Pattern Mastery - Momentum Dev Con 19 Apr 2018
Design Pattern Mastery - Momentum Dev Con 19 Apr 2018
 
P Training Presentation
P Training PresentationP Training Presentation
P Training Presentation
 
Object Oriented Concepts and Principles
Object Oriented Concepts and PrinciplesObject Oriented Concepts and Principles
Object Oriented Concepts and Principles
 
4 pillars of OOPS CONCEPT
4 pillars of OOPS CONCEPT4 pillars of OOPS CONCEPT
4 pillars of OOPS CONCEPT
 

Csci360 20

Editor's Notes

  1. Smalltalk, Eiffel, and CLOS only initialize base class data members to null.