【Python零基础入门篇 · 24】:面向对象的多态、静态方法和类方法

简介: 【Python零基础入门篇 · 24】:面向对象的多态、静态方法和类方法

面向对象的多态


多态特征:一个对象具有多种形态, 在不同的使用环境中以不同的形态展示其功能, 那么我们就称该对象具有多态特征。


  • 多态发生在具有继承关系的基础之上。


  • 多态不关注对象的类型,只关注对象具有的行为


  • 不同的子类对象,调用相同的父类方法,就会有不同的结果。


例如:“+”号,不同的对象使用,就会有不同的结果

02e714ed2a294f7fb17e1fd738c1da81.png


第一种多态展示

7f90895839774cee83334a116d15c9c0.png


第二种多态展示

定义统一接线口,一个接口,多种实现。

19fbe878fe3c453eb14487bba37067d8.png





静态方法和类方法


静态方法

使用装饰器:@staticmethod


定义格式:

class 类名:           
            @staticmethod           
             def 方法名(形参):                 
                    方法体


调用格式:


  • 类名.方法名(实参)


  • 对象名.方法名(实参)


ecd70c9b786d4a0ca2f35a2e17624bc7.png



类方法


类方法:针对类对象定义的方法


注意:类方法内部可以直接访问类属性,或者调用其他类方法。

定义格式:

class 类名:           
    @classmethod           
    def 方法名(形参):                 
            方法体



调用格式:


  • 类名.方法名(实参)


  • 对象名.方法名(实参) 不常用



例1:在实例方法中访问类属性

a79026db2aa6416098d9a664cb33d039.png

例2:在类方法中访问类属性

7e46e16260944d59ba2edc76fb3906dc.png


在类方法中访问不了实例属性,会报错。

f2451c33a99e4f9b97b647ffbe91febb.png




总结


  • 实例方法:方法内部访问实例属性,方法内部可以通过类名、类属性名来访问类属性


  • 静态方法:方法内部不需要访问实例属性和类属性


  • 类方法:方法内部只需要访问类属性


相关文章
|
18天前
|
关系型数据库 开发者 Python
Python编程中的面向对象设计原则####
在本文中,我们将探讨Python编程中的面向对象设计原则。面向对象编程(OOP)是一种通过使用“对象”和“类”的概念来组织代码的方法。我们将介绍SOLID原则,包括单一职责原则、开放/封闭原则、里氏替换原则、接口隔离原则和依赖倒置原则。这些原则有助于提高代码的可读性、可维护性和可扩展性。 ####
|
2月前
|
Python
Python面向对象(2)
【10月更文挑战第14天】
Python面向对象(2)
|
2月前
|
设计模式 程序员 C语言
Python面向对象
【10月更文挑战第13天】
Python面向对象
|
2月前
|
索引 Python
python-类属性操作
【10月更文挑战第11天】 python类属性操作列举
26 1
|
2月前
|
Java C++ Python
Python基础---类
【10月更文挑战第10天】Python类的定义
27 2
WK
|
2月前
|
Python
Python类命名
在Python编程中,类命名至关重要,影响代码的可读性和维护性。建议使用大写驼峰命名法(如Employee),确保名称简洁且具描述性,避免使用内置类型名及单字母或数字开头,遵循PEP 8风格指南,保持项目内命名风格一致。
WK
21 0
|
2月前
|
程序员 开发者 Python
深度解析Python中的元编程:从装饰器到自定义类创建工具
【10月更文挑战第5天】在现代软件开发中,元编程是一种高级技术,它允许程序员编写能够生成或修改其他程序的代码。这使得开发者可以更灵活地控制和扩展他们的应用逻辑。Python作为一种动态类型语言,提供了丰富的元编程特性,如装饰器、元类以及动态函数和类的创建等。本文将深入探讨这些特性,并通过具体的代码示例来展示如何有效地利用它们。
56 0
|
2月前
|
Python
Python中的类(一)
Python中的类(一)
21 0
|
Python
Python基础-多态的开闭原则
人的一生,会遇到各种各样的人和事,对于一些不如意的人和事,要学会放弃。
|
Python
Python基础(十六):多态
.封装 根据 职责 将 属性 和 方法 封装 到一个抽象的 类 中
168 0
Python基础(十六):多态
下一篇
DataWorks