zoukankan      html  css  js  c++  java
  • python 类属性,静态方法,类方法

    类对象:类名(比如Student)

    实例对象:类创建的对象(xiaoming=Student())

    类属性可以被类对象和实例对象所共有

    实例属性只能被实例对象所拥有,类对象不能拥有

    PS:如果在类外修改类属性,必须通过类对象去引用,如果通过实例对象引用,实际上是产生了一个新的实例属性,修改的是实例属性,对类属性没有影响,并且如果通过实例对象引用,引用的是新产生的属性

    如果删除了这个实例属性,那么继续引用的就是类属性。

    类方法:

    类方法可以被实例对象和类对象所引用,上面用到装饰器@classmethod,括号里面(cls),类方法还有一个作用就是修改类属性

    静态方法:

    静态方法同样可以被实例对象和类对象所引用,上面的装饰器是:@staticmethod,括号里面无需参数,注意:在静态方法中只能通过类名引用类属性和类方法,因为它的括号里面没有任何参数

    property装饰器(属性方法)

    属性方法一般什么时候应用?

    属性方法,用法:实例.属性(其实就相当于实例对象调用了这个方法,只不过已属性的方式显示)

    看下面实例:

    结果为:

    上面的代码相同,如果删除之后再重新调用mmmm.mkj

    那么结果为:

    注意:属性方法括号里面是self

    快速记忆:类方法(@classmethod)中的参数为cls,静态方法(@staticmethod)里面没有参数,属性方法(@property)参数为self

  • 相关阅读:
    爬虫之字体解密
    【大数据】PySpark 使用 FileSystem 操作 HDFS
    数据读取保存(五)
    Spark SQL 数据源(三)
    hive 之 DML 操作(六)
    【Python】散列的一种实现
    【Python】插入记录并获取其自增ID(PyMysql)
    sbt 编译打包(六)
    Spark SQL (二)
    2022年的第一篇
  • 原文地址:https://www.cnblogs.com/daqingzi/p/9373111.html
Copyright © 2011-2022 走看看