在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Python/ 六、類的多態(tài)
二、Enum 的源碼
前言
一、Python 模塊簡介
一、List(列表)
五、匿名函數(shù)
三、什么是元類
二、循環(huán)語句
二、模塊的使用
三、第一個 Python 程序
線程與進(jìn)程
Python
三、條件語句和循環(huán)語句綜合實例
四、對象的描述器
三、類的屬性
一、迭代
五、迭代器和生成器綜合例子
六、運(yùn)算符相關(guān)的魔術(shù)方法
一、枚舉類的使用
前言
一、簡明概述
二、Python 的基本數(shù)據(jù)類型
多線程編程
五、作用域
四、包
四、枚舉的比較
四、Python 中的變量
六、類的多態(tài)
一、Python 中類也是對象
一、Python 的 Magic Method
前言
四、生成器
一、面向?qū)ο蟮母拍?/span>
五、類的繼承
二、類
二、使用 <code>type()</code> 動態(tài)創(chuàng)建類
進(jìn)程
二、set
三、主模塊和非主模塊
一、字典(Dictionary)
前言
前言
前言
前言
四、集成開發(fā)環(huán)境(IDE): PyCharm
前言
四、函數(shù)的參數(shù)
三、lsit 生成式(列表生成式)
四、自定義元類
四、類的方法
二、函數(shù)傳值問題
二、注釋
一、條件語句
一、Python 語法的簡要說明
三、函數(shù)返回值
三、基本數(shù)據(jù)類型轉(zhuǎn)換
三、屬性的訪問控制
二、Python 的安裝
前言
三、命名規(guī)范
一、Python 自定義函數(shù)的基本步驟
三、自定義類型的枚舉
五、自定義容器(Container)
二、Python 迭代器
前言
二、tuple(元組)
一、Python 簡介
前言
前言
前言
二、構(gòu)造(<code>__new__</code>)和初始化(<code>__init__</code>)
前言

六、類的多態(tài)

多態(tài)的概念其實不難理解,它是指對不同類型的變量進(jìn)行相同的操作,它會根據(jù)對象(或類)類型的不同而表現(xiàn)出不同的行為。

事實上,我們經(jīng)常用到多態(tài)的性質(zhì),比如:

>>> 1 + 2
3
>>> 'a' + 'b'
'ab'

可以看到,我們對兩個整數(shù)進(jìn)行 + 操作,會返回它們的和,對兩個字符進(jìn)行相同的 + 操作,會返回拼接后的字符串。也就是說,不同類型的對象對同一消息會作出不同的響應(yīng)。

看下面的實例,來了解多態(tài):

#!/usr/bin/env python3
# -*- coding: UTF-8 -*-

class User(object):
    def __init__(self, name):
        self.name = name

    def printUser(self):
        print('Hello !' + self.name)

class UserVip(User):
    def printUser(self):
        print('Hello ! 尊敬的Vip用戶:' + self.name)

class UserGeneral(User):
    def printUser(self):
        print('Hello ! 尊敬的用戶:' + self.name)

def printUserInfo(user):
    user.printUser()

if __name__ == '__main__':
    userVip = UserVip('兩點水')
    printUserInfo(userVip)
    userGeneral = UserGeneral('水水水')
    printUserInfo(userGeneral)

輸出的結(jié)果:

Hello ! 尊敬的Vip用戶:兩點水
Hello ! 尊敬的用戶:水水水

可以看到,userVip 和 userGeneral 是兩個不同的對象,對它們調(diào)用 printUserInfo 方法,它們會自動調(diào)用實際類型的 printUser 方法,作出不同的響應(yīng)。這就是多態(tài)的魅力。

要注意喔,有了繼承,才有了多態(tài),也會有不同類的對象對同一消息會作出不同的相應(yīng)。

最后,本章的所有代碼都可以在 https://github.com/TwoWater/Python 上面找到,文章的內(nèi)容和源文件都放在上面。同步更新到 Gitbooks。

上一篇:四、包下一篇:一、簡明概述