点我
继承&多态
继承
当定义一个class时,可以从某个现有的的class继承
新的class称为子类(Subclass)
被继承的class称为基类、父类或超类(Base class、Super class)
定义:
class 类名(父类,没有则写object):
注意:object类是所有类最终都会继承的类
1、子类获得了父类的全部功能
2、子类可增加新的方法
3、子类可覆盖父类中的方法
多态
函数:一个变量是否是某个类型可以用isinstance()
多态指的是一类事物有多种形态,
比如动物类,可以有猫,狗,猪等等。
(一个抽象类有多个子类,因而多态的概念依赖于继承)
多态性是指具有不同功能的函数可以使用相同的函数名
好处:
1、增加程序的灵活性
2、增加程序的可扩展性
一个接口,多种实现
#定义animal父类
class Animal(object):
def run(self):
print("Animal is running")
#定义dog类,继承与animal父类
class Dog(Animal):
def eat(self):
print('我吃肉')
#定义cat类,继承与animal父类
class Cat(Animal):
def run(self):
print("cat is running")
#创建Dog的实例
dog = Dog()
dog.run()
dog.eat()
#创建Cat的实例
cat = Cat()
cat.run()
# 子类的run()
# 覆盖了父类的run(),
# 在代码运行的时候,总是会调用子类的run()
a = Animal()
print(isinstance(a,Dog))
分类:
Python
版权申明
本文系作者 @小白学安全 原创发布在 xbxaq.com 站点,未经许可,禁止转载!
评论