Python物件導向的特點(三)多型

2021-10-02 11:58:32 字數 947 閱讀 2039

在物件導向程式設計中,不同的子類物件呼叫相同的父類方法,產生不同的執行結果;

**示例:

需求:定義狗類和人類,要求普通的狗類開心的玩耍,特殊的狗類和公尺老鼠玩耍。

class dog(object):

def __init__(self,name):

self.name = name

def game(self):

print('%s 開心的玩耍~' %(self.name))

class pluto(dog):

# 父類的方法不能滿足子類的需求 重寫game方法

def game(self):

print('%s和公尺老鼠一起玩~' %(self.name))

class person(object):

def __init__(self,name):

self.name = name

def game_with_dog(self,dog):

print('%s和%s玩~' %(self.name,dog.name))

dog.game()

# 建立乙個狗物件

wangcai = dog('大黃')

#建立另乙個狗物件

#wangcai = pluto('布魯托')

# 建立乙個人物件

xiaoming = person('小明')

# 讓小明和狗玩

xiaoming.game_with_dog(wangcai)

結果:

物件導向(三) 多型

多型是物件導向三大特性中比較難理解的乙個概念,但並不複雜!在這裡介紹下有關多型的概念以及相關用法。多型可以理解為對於同乙個方法,根據不同的物件產生不同的結果。光說肯定很抽象,下面用個例子去解釋多型。例子 package com.zzl.polymorphism public class polymo...

C 物件導向(三)多型

物件的多種形態 辛巴是獅子 辛巴是動物。animal xinba new lion 行為的多種形態 同樣的行為,但是表現形式不同。也就是說方法簽名一樣,方法體不同。簽名在這裡指的是方法名 引數以及返回值 行為的多型體現為方法的重寫 隱藏 過載 隱藏是實現多型的基本方法之一。class program...

LUA物件導向程式設計(三)多型

先來了解一下多型的概念。在物件導向語言中,多型本質就是執行時繫結,比如有乙個父類baseclass,它有2個子類subclass1,subclass2。baseclass有乙個方法func 兩個子類都重寫了這個方法。那麼我們可以定義乙個baseclass的引用obj,讓它指向乙個子類的物件,比如ba...