Python基础-多态的开闭原则

简介: 人的一生,会遇到各种各样的人和事,对于一些不如意的人和事,要学会放弃。

说明

1、调用方只管调用而不管细节如何,当我们增加一个子类时,只要确保新方法写得正确,而不管原始代码。

2、对扩展开放:允许子类重写方法函数。

3、对修改封闭:不重写,直接继承父类方法函数。

举例

class Animal():
    def who(self):
        print("I am an Animal")
class Duck(Animal):
    def who(self):
        print("I am a duck")
 
class Dog(Animal):
    def who(self):
        print("I am a dog")
 
class Cat(Animal):
    def who(self):
        print("I am a cat")
 
def func(obj):
    obj.who()
 
if __name__ == "__main__":
    duck=Duck()
    dog=Dog()
    cat=Cat()
    func(duck)
    func(dog)
    func(cat)
相关文章
跟我从0学Python——类的继承和多态
类的继承和多态 —— 面向对象编程的扩展与灵活性
|
8月前
|
Python
请简述Python中的继承、封装和多态的概念。
【2月更文挑战第24天】【2月更文挑战第82篇】请简述Python中的继承、封装和多态的概念。
46 1
|
Python
一文学会Python面向对象中封装、继承、多态使用
一文学会Python面向对象中封装、继承、多态使用
115 0
|
8月前
|
Python
Python 面向对象编程:什么是面向对象编程(OOP)?解释封装、继承和多态的概念。
Python 面向对象编程:什么是面向对象编程(OOP)?解释封装、继承和多态的概念。
93 0
|
13天前
|
设计模式 Python
简单分享下python多态
多态是面向对象编程中至关重要的特性,通过继承和方法重写,可以实现代码复用和灵活扩展。Python的鸭子类型进一步增强了多态的灵活性,使得代码更具适应性。通过理解和应用多态,可以写出更为简洁、优雅和高效的代码。
48 9
|
4月前
|
前端开发 Python
Python编程的面向对象有哪些(二)
Python编程的面向对象(二)—类的多态
30 7
|
7月前
|
Python
Python面向对象进阶:深入解析面向对象三要素——封装、继承与多态
Python面向对象进阶:深入解析面向对象三要素——封装、继承与多态
|
7月前
|
Python
python多态 , 绑定方法与内置方法
python多态 , 绑定方法与内置方法
|
8月前
|
Python
python面向对象编程,解释继承和多态的概念。
python面向对象编程,解释继承和多态的概念。
71 0
|
8月前
|
Python
Python从入门到精通:深入学习面向对象编程——2.1.2继承、封装和多态的概念
Python从入门到精通:深入学习面向对象编程——2.1.2继承、封装和多态的概念