89 lines
1 KiB
Python
89 lines
1 KiB
Python
## Animal is-a object (yes, sort of confusing) look at the extra credit
|
|
class Animal(object):
|
|
|
|
pass
|
|
|
|
## dog has an attribute
|
|
class Dog(Animal):
|
|
|
|
|
|
def __init__(self, name):
|
|
## ??
|
|
|
|
self.name
|
|
|
|
|
|
##
|
|
class Cat(Animal):
|
|
|
|
|
|
def __init__(self, name):
|
|
## ??
|
|
self.name = name
|
|
|
|
## ??
|
|
class Person(object):
|
|
|
|
|
|
def __init__(self, name):
|
|
## ??
|
|
self.name = name
|
|
|
|
|
|
## Person has-a pet of some kind194
|
|
|
|
self.pet = None
|
|
|
|
|
|
## ??
|
|
class Employee(Person):
|
|
|
|
|
|
def __init__(self, name, salary):
|
|
## ?? hmm what is this strange magic?
|
|
super(Employee, self).__init__(name)
|
|
## ??
|
|
self.salary = salary
|
|
|
|
## ??
|
|
class Fish(object):
|
|
|
|
pass
|
|
|
|
## ??
|
|
class Salmon(Fish):
|
|
|
|
pass
|
|
|
|
## ??
|
|
class Halibut(Fish):
|
|
|
|
pass
|
|
|
|
## rover is-a Dog
|
|
rover = Dog("Rover")
|
|
|
|
## ??
|
|
satan = Cat("Satan")
|
|
|
|
## ??
|
|
mary = Person("Mary")
|
|
|
|
## ??
|
|
mary.pet = satan
|
|
|
|
## ??
|
|
frank = Employee("Frank", 120000)
|
|
|
|
## ??
|
|
frank.pet = rover
|
|
|
|
## ??
|
|
flipper = Fish()
|
|
|
|
## ??
|
|
crouse = Salmon()
|
|
|
|
|
|
## ??
|
|
harry = Halibut()
|