concepts of object oriented programming. topics to be discussed………………………. objects...

14
CONCEPTS OF OBJECT ORIENTED PROGRAMMING

Upload: shannon-cassandra-kelley

Post on 28-Dec-2015

249 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

CONCEPTS OF OBJECT ORIENTED

PROGRAMMING

Page 2: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

Topics To Be Discussed……………………….

Objects

Classes

Data Abstraction and Encapsulation

Inheritance

Polymorphism

Static Binding

Dynamic Binding

Page 3: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

Objects

Objects are the basic run-time entities in an object-oriented system. They

may represent a person, place, a bank account, a table of data or any item

that the program has to handle. They may also represent user-defined data

such as vectors, time and list. Program objects should be chose such that

they match closely with the real world objects. Objects take up space in

memory and have an associated address.

When a program is executed, the objects interact by sending messages to

one another. For example, if “customer” and “account” are two objects in

program, then a customer object may send a message to the account object

requesting for the bank balance

Page 4: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

Each object contains data, and code to manipulate the data. objects can

interact without having to know details of other’s data or code. Following

notation that is popularly used in object oriented analysis and design:

Object: Student

DataNameDate of BirthMarks

FunctionsTotalAverageDisplay

Page 5: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

Classes

Object contain data and code to manipulate data. The entire set of data and

code of an object can be made a user-defined data type with the help of a

class. Objects are variables of the type class. Once a class has been defined

we can create any number of objects belonging to that class. Each object is

created with the data of type class with which they are created. A class is a

collection of objects of objects of similar type.

For example mango, apple and orange are member of the class fruit.

Classes are user-defined data types and behave like the built-in type of a

programming language.

Page 6: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

If fruit has been defined as a class, then the statement

Fruit mango;

Will create an object mango belonging to the class fruit.

Page 7: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

Data Abstraction And Encapsulation

The wrapping up of data and functions into a single unit is known as

encapsulation. Data encapsulation is the most striking feature of a class. The

data is not accessible to the outside world, and only those functions which are

wrapped in the class can access it. These function provide the interface

between the object’s data and the program.

Abstraction refers to the act of representing essential features without

including the background details. Classes uses the concept of abstraction and

are defined as a list of abstract attributes such as size, weight and cost and

functions to operate on these attributes.

Page 8: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

Inheritance

Inheritance is the process by which objects of one class acquire the

properties of objects of another class. It supports the concept of

hierarchical classification. For example , the bird ‘robin’ is a part of the

class flying bird’ which is again a part of the class ‘bird’. Each derived

class shares common characteristics with the class from which it is derived.

In OOP, the concept of inheritance provides the idea of reusability. This

mean we can additional features to an existing class without modifying it.

This is possible by deriving a new class from existing one.. The new class

will have combined features of both the classes.

Page 9: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

Bird

AttributesFeathersLay eggs

Flying Bird Non Flying Bird

Attributes………….………….

Attributes…………..…………..

Robin Swallow Penguin Kiwi

Attributes………….

Attributes………….

Attributes………….

Attributes………….

Page 10: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

Polymorphism

Polymorphism is an important features of OOP concept. Polymorphism

means ability to take more than one form. An operation may exhibit different

behavior in different instances. The behavior depends upon the types of data

used in operation.

For example, consider the operation of addition. For two numbers, the

operation will generate a sum. If the operands are string, then the operation

would produce third string by concatenation.

The process of making an operator to exhibit different behavior in different

instances is known as operator overloading.

Page 11: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

Using a single function name to perform different task is known as

function overloading. In following figure single function name can be used

to handle different number and different types of augments.

Draw (Box)

Draw()

Circle Object

Draw(Circle)

Shape

Box Object

Draw(Triangle)

Triangle Object

Page 12: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

Type of Polymorphism

Static Binding or Compile Time Polymorphism: Static Binding means that

the code associated with the function call is linked at compile time. Static

Binding is also known as early binding or compile tile polymorphism.

For example, when an overloaded function is called, the compile matches the

arguments passes with the formal arguments of the various function with the

same name.

Once the match is found, it associated that code of the function with the call.

There is no confusion and appropriate function is linked at compile time.

This is called static binding

Page 13: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

Dynamic Binding or Run Time Polymorphism: Dynamic binding by

means that the code associated with the function call is linked at run time.

Dynamic binding is also known as late binding or run time polymorphism.

Page 14: CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism

THANKS