You are on page 1of 35

Session Objectives

Introduction to Objects Define Class & Objects Characteristics of OOPS History of C++ Difference Between C & C++ C++ Programming Structure

All around us in the real world are objects. Each object has certain characteristics and exhibits certain behaviour

OBJECT
Data Color : Black Year : 2008 Actions Start Stop Accelerate

The Object-Oriented Approach - III


Sales

Accounts

Personnel

The real world around is full of objects .We can consider both living beings as well as things as objects.For example,the different departments in a company are objects.

Why OOPs Concept are Used?


The drawbacks of Traditional Programming approach are
Unmanageable Programs Code Reusability not Optimum

Problems in Modification of Data


Difficulty in Implementation

Object Oriented Programming


Here the application has to implement the entities as they are seen in real life and associate actions and attributes with each.

Data
Employee details Salary statements Accounts

Functions
Calculate salary Pay salary

Bills
Vouchers Reciepts

Pay bills
Tally accounts Transact with banks

Benefits of Object Oriented Programming approach are OOP offers better implementation OOP offers better data security OOP offers better code reusability OOP offers more flexibility OOP offers better manageable programs Large complexity in the software development can be easily managed User defined datatypes can be easily constructed

Object Oriented Approach


Problem Identification Analysis

Maintenance

Design

Implementation
Testing

Development

Data acquisition Systems Client/Server Computing Object Oriented Database applications

Artificial Intelligence and expert systems


systems such as process control, temperature control etc. GUI based system such as Windows Applications Computer Aided Design and manufacturing Systems

Encapsulation Data Abstraction

Inheritance
Polymorphism Class

Grouping of data and methods into a single entity is known as Data Encapsulation

It is a technical name for information hiding. (i.e data hiding or data security)

Encapsulation
Class

Not accessible from outside class

Private

Accessible from outside class

Public

Data abstraction enhances security as use of data is restricted to certain functions only. Abstraction is more used where you

want

only

certain

number

of

functions/methods are accessing data.

For Example
Class
Data abstraction is a process of identifying methods properties related much and to a

Attributes

particular entity as relevant to the application

Methods

It is the process of creating a new class from an existing class

Reusability can be achieved through inheritance


Animals

Insects

Mammals

Reptiles

Amphibians

Humans

Non-Humans

Reusability
Programs can be broken into reusable objects Existing classes can be used with additional features Shape

Benefits of Inheritance

polymorphism allows a programmer to purse a course of action by sending a message to an object without concerning about how the software system is to implement the action Simply defined as Same thing can behave different ones

Class Artiste

Dancer
Class : Shape Methods : Draw Move

Sculptor Poet
Subclasses

Initialize

A class is what defines all the data members and the methods that an object should have. The class defines the characteristics that the object will possess; it could also be referred to as a blueprint of the object.

For Example
Polygon objects

Polygon class
Properties
Abstract
into Vertices Border Color Fill Color

Methods
Draw Erase Move

+
Simply defined as a structure that combines the objects with some attributes (data structure) and some behavior (operation)

Access Specifiers of a Class


Class Not accessible from outside the class

Private
Data or functions Public

Accessible from outside the class

Data or functions

To access the member data and member function defined inside the class

Object Oriented Languages


Some of the leading object oriented languages are:
C++ Smalltalk Eiffel CLOS Java

Author of C++ is

Bjarne stroustrup
He invented this language in 1980's at

AT&T Bell Laboratories


All the C programs can be run successfully using C++ compiler

C++ was designed using two languages such as C Language which gives the low-level feature and Simula67 provides the class concept.

C Language Procedural Programming Language Headerfile : #include<stdio.h>

C++ Language Object Oriented Programming Language #include<iostream.h> we can use endl statement All Functions must be protyped It can be declared anywhere in a program, before they are used Return type must be specified

\n is used to go to the next line Function prototypes are optional Local variables declared only the start of a C program Return type for a function is optional

Do not permit data Hiding


Bydefault structure members are public We can call a main() function within a program

They permit data hiding


class members are private This is not allowed

Each class specification starts with the keyword class

The Class Specification must always end with a semicolon (;)


Data abstraction is the ability to create user-defined data types for modeling real world objects using built-in data types. Classes are used for data abstraction by hiding the

implementation of a type in the private part.


Polymorphism in Greek word means Many Forms

A class is an enhanced structure that provides Object-Oriented Features of C++ An object is an instance of a class which combines both data and functions together. Encapsulation is the process of combining member functions and the data it manipulates and keeps them safe from outside interferrence The three access specifiers in a class are

private,public,protected By default all members declared inside a class are private to that class C++ provides two pre-defined objects cin and cout for handling input and output

EXERCISES
1. Describe the Basic concepts of OOPS?
2. List the various applications of Object oriented Programming?

3. Explain briefly Classes & Objects?


4. State the use of #include directive in C++? 5. List the various benefits of Object Oriented Programming?

You might also like