41.多态

  1. 多态

多态

面向对象三大特性

  1. 封装,根据职责将属性和方法封装到一个抽象的类中
    定义类的准则
  2. 继承,实现代码的重用,相同的代码不需要重复的编写
    设计类的技巧
    子类针对自己特有的需求,编写特定的代码
  3. 多态,不同的子类对象调用相同的父类方法,产生不同的执行结果
    多态可以增加代码的灵活度
    以继承和重写父类方法为前提
    是调用方法的技巧,不会影响到类的内部设计
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
class Dog:
def __init__(self, name):
self.name = name

def game(self):
print("%s普通玩" % self.name)


class XiaoTianDog(Dog):
def game(self):
print("%s天上玩" % self.name)


class Person:
def __init__(self, name):
self.name = name

def game_with_dog(self, dog):
print("%s和狗%s玩" % (self.name, dog.name))
dog.game()


dd = Dog("狗")
d = XiaoTianDog("哮天犬")
m = Person("张三")
m.game_with_dog(dd)

转载请注明来源,欢迎指出任何有错误或不够清晰的表达。可以邮件至gxnucgb@qq.com

文章标题:41.多态

文章字数:227

本文作者:陈桂彬

发布时间:2019-08-06, 08:38:47

最后更新:2019-08-06, 09:07:54

原始链接:https://github.com/gxnucgb/gxnucgb.github.io/2019/08/06/41-多态/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏

github