Dog和Cat都繼承Animal,都使用父類的init方法,但是greet方法卻是不同的,子類對(duì)父類進(jìn)行了覆蓋,還編寫了自己的run方法
class Animal(object):
def __init__(self,name):
self.name = name
def greet(self):
print('I am a animal')
class Dog(Animal):
def greet(self):
print('I am a ' + self.name + ' dog')
def run(self):
print('dog run')
class Cat(Animal):
def greet(self):
print('I am a ' + self.name + ' cat')
def run(self):
print('cat run')
dog = Dog('black')
cat = Cat('white')
dog.greet()
cat.greet()
dog.run()
cat.run()
# isinstance判斷某個(gè)數(shù)據(jù)是否是該類型
print(isinstance(dog,Animal))
print(isinstance(cat,Animal))
print(isinstance(dog,Dog))
print(isinstance(dog,Cat))
|