0% found this document useful (0 votes)
3 views

IntroToOOP

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

IntroToOOP

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 34

Object Oriented

Programming
Presented by
I. Sakthidevi., ME., (PhD)
Assistant Professor
Department of IT
Adhiyamaan College of Engineering
(An Autonomous Institution),Hosur
1
INTRODUCTION TO OOP

Objective:

•Know the difference between functional programm


and OOP
• Know basic terminology in OOP
• Know the importance of OOP
• Know four design principles of OOP

2
Structured Programming

Using function
Function & program is divided into modules
Every module has its own data and function
which can be called by other modules.

3
OBJECT ORIENTED PROGRAMMING

Object 2
Object 1

Data Data

Function Function

Object 3

Data

Function

4
OBJECT ORIENTED PROGRAMMING

•Objects have both data and methods


• Objects of the same class have the same data
elements and methods
• Objects send and receive messages to invoke
actions

Key idea in object-oriented:

The real world can be accurately described as a collection of


objects that interact.

5
Basic terminology

•object
- usually a person, place or thing (a noun)
•method
- an action performed by an object (a verb)
•attribute
- description of objects in a class
•class
- a category of similar objects (such as
automobiles)
- does not hold any values of the object’s 6
Example for attributes and methods
Attributes: Methods:
manufacturer’s Define data items
name (specify
manufacturer’s name,
model name model, year, etc.)
year made Change a data item
color (color, engine, etc.)
Display data items
number of doors
Calculate cost
size of engine etc.
etc.

7
Why OOP?

• Save development time (and cost) by


reusing code
–once an object class is created it can be
used in other applications
• Easier debugging
–classes can be tested independently
–reused objects have already been tested

8
Design Principles of OOP

Four main design principles of Object-


Oriented Programming(OOP):

• Encapsulation
• Abstraction
• Polymorphism
• Inheritance

9
10
11
12
13
14
15
16
17
18
19
20
21
Abstraction
Focus only on the important facts about the
problem at hand
to design, produce, and describe so that it can
be easily used without knowing the details of
how it works.
Analogy:
When you drive a car, you don’t have to know
how the gasoline and air are mixed and ignited.
Instead you only have to know how to use the
controls.
Draw map

22
23
Encapsulation

•Also known as data hiding


•Only object’s methods can modify
information in the object.

Analogy:
• ATM machine can only update accounts of
one person or object only.

24
25
26
Inheritance

• Inheritance—a way of organizing classes


• Term comes from inheritance of traits like
eye color, hair color, and so on.
• Classes with properties in common can be
grouped so that their common properties are
only defined once.
• Superclass – inherit its attributes &
methods to the subclass(es).
• Subclass – can inherit all its superclass
attributes & methods besides having its own
unique attributes & methods. 27
An Inheritance Hierarchy

Superclass
Vehicle
Subclasses

Automobile Motorcycle Bus

Sedan Sports Car Luxury Bus School Bus

What properties does each vehicle inherit from the types


of vehicles above it in the diagram?

28
29
30
Polymorphism

•the same word or phrase can mean


different things in different contexts

Analogy:
•In English, bank can mean side of a river
or a place to put money
•move -

31
Function Overloading

The operation of one function depends on


the argument passed to it.
Example: Fly(), Fly(low), Fly(150)

32
Object-Oriented Programming Languages

 Pure OO Languages
Smalltalk, Eiffel, Actor, Java

 Hybrid OO Languages
C++, Objective-C, Object-Pascal

33
34

You might also like