Python是一種純粹的面向?qū)ο笳Z言。面向?qū)ο缶幊讨械乃拇筇卣鞣謩e是:抽象、封裝、繼承和多態(tài)。多態(tài)根據(jù)上下文,對象可以采用多種形式。程序?qū)⒋_定該對象每次執(zhí)行所需的含義或用法,從而減少了重復代碼。
我國有句俗語:“龍生九子,各有不同”。這就是多態(tài)。多態(tài)是同一類事物具有的多種形態(tài)。多態(tài)是面向?qū)ο缶幊痰闹匾攸c之一。
Python本身就是一種多態(tài)語言:
上述程序中,參數(shù)a和b可以接收不同的數(shù)據(jù)類型。當a和b同時是數(shù)字類型時,add()函數(shù)將進行加法運算;當a和b同時是字符串類型或列表類型時,add()函數(shù)將進行拼接運算。
下面用一個示例來介紹計算機編程語言中的多態(tài)。
上述程序中,定義了四個類,分別是Animal類、People類、Dog類和Pig類,其中People類、Dog類和Pig類都繼承了Animal類。這就體現(xiàn)了同一類事物的多種形態(tài)。這四個類都有一個talk()方法。試著調(diào)用talk()方法,代碼如下:
上述程序中,調(diào)用Func()函數(shù)為同一個操作,但調(diào)用的參數(shù)是不同的,即調(diào)用了不同的實例作為參數(shù)。由運行結(jié)果可知,有不同的類創(chuàng)建不同的實例,以不同的實例作為參數(shù)時,調(diào)用talk()得到的打印結(jié)果是不同的,這是因為每個實例具有不同的實現(xiàn)方式,這就是多態(tài)性的體現(xiàn)。
多態(tài)性是同一個操作因作用實例不同而表現(xiàn)出不同實現(xiàn)方式的特性。多態(tài)性增加了程序的靈活性,以不變應萬變,無論實例千變?nèi)f化,使用者都是以同一種形式去調(diào)用;多態(tài)性還增加了程序可擴展性,通過繼承創(chuàng)建新的類,子類可以使用父類的方法,也可以使用自己重寫的方法。
>>本文地址:http://liujunjsxg.cn/zhuanye/2020/48610.html
聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學歷
3 您更想做哪個方向的工作?