Presentation is loading. Please wait.

Presentation is loading. Please wait.

Object Oriented Programming www.bookspar.com | Website for students | VTU NOTES.

Similar presentations


Presentation on theme: "Object Oriented Programming www.bookspar.com | Website for students | VTU NOTES."— Presentation transcript:

1 Object Oriented Programming www.bookspar.com | Website for students | VTU NOTES

2 Problem Description “ …customers are allowed to have different types of bank accounts, deposit money, withdraw money and transfer money between accounts” www.bookspar.com | Website for students | VTU NOTES

3 Procedural Approach bool MakeDeposit(int accountNum,float amount); float Withdraw(int accountNum,float amount); struct Account { char *name; int accountNum; float balance; char accountType; }; www.bookspar.com | Website for students | VTU NOTES

4 Procedural Approach cont’d Focus is on procedures All data is shared: no protection More difficult to modify Hard to manage complexity www.bookspar.com | Website for students | VTU NOTES

5 Procedural vs. Object-Oriented Procedural Withdraw, deposit, transfer Object Oriented Customer, money, account www.bookspar.com | Website for students | VTU NOTES

6 Mapping the world to software Objects in the problem domain are mapped to objects in software 011101 10011 11101 0110100 11010 010101 1110101 10101 www.bookspar.com | Website for students | VTU NOTES

7 Object Oriented Data and operations are grouped together Account Withdraw Deposit Transfer Interface: Set of available operations www.bookspar.com | Website for students | VTU NOTES

8 Data Encapsulation class Account { public: float withdraw(); void deposit(float amount); private: float balance; ); www.bookspar.com | Website for students | VTU NOTES

9 Advantages of Encapsulation Protection Consistency Allows change www.bookspar.com | Website for students | VTU NOTES

10 Objects and Classes Classes reflect concepts, objects reflect instances that embody those concepts. Daria Jane Brittany Jodie girl class object www.bookspar.com | Website for students | VTU NOTES

11 Objects and Classes cont’d A class captures the common properties of the objects instantiated from it A class characterizes the common behavior of all the objects that are its instances www.bookspar.com | Website for students | VTU NOTES

12 Objects and Classes cont’d Class BankAccount Balance InterestYTD Owner Account_number Balance 500 InterestYTD Owner Account_number Balance 10,000 InterestYTD Owner Account_number Operations MakeDesposit Transfer WithDraw GetBalance www.bookspar.com | Website for students | VTU NOTES

13 Objects as instances of Classes The world conceptually consists of objects Many objects can be said to be of the same type or class My bank account, your bank account, Bill Gates’ bank account … We call the object type a class www.bookspar.com | Website for students | VTU NOTES

14 Instantiation An Object is instantiated from a Class BankAccount myAccount; myAccount = new BankAccount; www.bookspar.com | Website for students | VTU NOTES

15 Objects and Classes Class Visible in source code The code is not duplicated Object Own copy of data Active in running program Occupies memory Has the set of operations given in the class www.bookspar.com | Website for students | VTU NOTES

16 Classification Mammal RodentPrimateCats Reptile Animal SquirelRabbitMouse www.bookspar.com | Website for students | VTU NOTES

17 Classification Enjoy a variety of personal banking options from First American. The following outlines a number of First American products. If you have any questions, please visit any First American Branch or contact us.contact us Checking Bank a lot without spending a lot: ValueFirst ® Checking.ValueFirst ® Checking Few checks and prefer PC Banking or ATMs: Select Access.Select Access Earn interest on checking dollars: First Interest CheckingFirst Interest Checking You are 55 years or better: 55 & Better Silver55 & Better Silver Premium checking features with higher interest rates than a personal checking account: First American Platinum CheckingFirst American Platinum Checking Write less than 10 checks per month, or bank through an ATM: Budget Checking.Budget Checking Younger than 24 years old and in school: Student CheckingStudent Checking Less than 20 transactions per month (excluding ATM, POS, and CheckCard): First AccountFirst Account Make the most out of every dollar: Tailored Money SweepTailored Money Sweep www.bookspar.com | Website for students | VTU NOTES

18 Classification Checking Account Value FirstSelect AccessFirst Interest Savings Account Account www.bookspar.com | Website for students | VTU NOTES

19 Inheritance A class which is a subtype of a more general class is said to be inherited from it. The sub-class inherits the base class’ data members and member functions www.bookspar.com | Website for students | VTU NOTES

20 Inheritance cont’d A sub-class has all data members of its base-class plus its own A sub-class has all member functions of its base class (with changes) plus its own Inheritance is meant to implement sub- typing (don’t abuse it) www.bookspar.com | Website for students | VTU NOTES

21 Abstraction Management of complexity Hierarchical classification: is-a relationship: inheritance has-a relationship: containment www.bookspar.com | Website for students | VTU NOTES

22 Polymorphism One interface Multiple implementations Inheritance Method overloading www.bookspar.com | Website for students | VTU NOTES

23 What is a good class ? A class abstracts objects A class should be non-trivial in the context of the program (has data structures and operations different from other classes) www.bookspar.com | Website for students | VTU NOTES

24 Summary What is Object Oriented Programming? Object-oriented programming is a method of implementation in which programs are organized as cooperative collections of objects, each of which represents an instance of some class, and whose classes are all members of one or more hierarchy of classes united via inheritance relationships www.bookspar.com | Website for students | VTU NOTES


Download ppt "Object Oriented Programming www.bookspar.com | Website for students | VTU NOTES."

Similar presentations


Ads by Google