Presentation is loading. Please wait.

Presentation is loading. Please wait.

Object Oriented Design and Classes

Similar presentations


Presentation on theme: "Object Oriented Design and Classes"— Presentation transcript:

1 Object Oriented Design and Classes

2 Exercises Design a phone book program. Your program should keep track of the name and phone number of your contacts. You should be able to add new contacts to your phone book and view your phone book.

3 What is a class? Programming mechanism to support OOD
Data and the methods that operate on that data – collectively called members Example: bank account class Provide structure for organizing programs

4 Methods Methods operate on data An object in an instance of a class
accessors – read data, provide access to data but do not change it mutators – change data examples from bank account, zoo constructor – builds a new object An object in an instance of a class class is a blueprint for objects

5 BankAccount Class class BankAccount:
def __init__(self, initial_balance): self.balance = initial_balance def deposit(self, amount): self.balance += amount def withdraw(self, amount): self.balance -= amount def checkBalance(self): print "Balance: ", self.balance

6 BankAccount Class def __init__(self, initial_balance):
self.balance = initial_balance __init__ method is the constructor Used to initialize members of the object First parameter is self – the object on which the method/constructor is called Use dot notation (.) to reference members of the object

7 BankAccount Class def deposit(self, amount): self.balance += amount
def withdraw(self, amount): self.balance -= amount Deposit and withdraw are mutators they modify the data member balance First parameter is self Like functions, methods can take any number of parameters

8 BankAccount Class def checkBalance(self):
print "Balance: ", self.balance checkBalance does not modify data members

9 Creating and Using Objects
b = BankAccount(500) //Name = Type(constructor parameters)

10 Creating and Using Objects
b = BankAccount(500) //Name = Type(constructor parameters) //how would you withdraw funds? b.withdraw(500) //object_name.method_name(params)

11 Composing Objects An object can have a reference to another object
class Name: def __init__(self, first, last): self.first = first self.last = last def printName(self): print "Name: ", self.first, " ", self.last class Employee: def __init__(self, first, last, pay): self.name = Name(first, last) self.pay = pay def printEmployee(self): self.name.printName() print "\tPay rate: ", self.pay

12 Exercises Implement your phone book program.


Download ppt "Object Oriented Design and Classes"

Similar presentations


Ads by Google