zoukankan      html  css  js  c++  java
  • python 类和对象 (类属性,类方法,静态方法,实例属性,实例方法)

    1、类和对象

    类:类是抽象的,在使用的时候通常会找到这个类的一个具体的存在,使用这个具体的存在。一个类可以找到多个对象

    对象: 某一个具体事物的存在,在现实世界中可以是看的到摸得着的。 可以直接使用

    类与对象的关系: 类就是创建对象的模板

    类的构成:

    1.类的名称:类名

    2.类的属性:一组数据

    3.类的方法:允许对进行操作的方法(行为)

    对象:当创建对象时,就是用一个模子,来制造一个实物

    2、类属性,实例属性

    类属性:类对象所拥有的属性,它被所有类对象的实例对象所共有,在内存中只存在一个副本。

    实例属性:实例对象所拥有的属性,则是以为self.开头 (实例也能访问类变量)

    3、实例方法、静态方法、类方法

    实例方法:类的实例能使用的方法

    静态方法:普通函数就位于类定义的命名空间中,它不会对任何实例类型进行操作。需要使用装饰器@staticmethod定义静态方法 (类对象和实例都可以调用静态方法)

    类方法:将类本身作为对象进行操作的方法。使用@classmethod装饰器定义,其第一个参数是类,约定写为cls(类对象和实例都可以调用类方法)

    4、总结:

    类方法的第一个参数是类对象cls,那么通过cls引用的必定是类对象的属性和方法;

    而实例方法的第一个参数是实例对象self,那么通过self引用的可能是类属性、也有可能是实例属性(这个需要具体分析),不过在存在相同名称的类属性和实例属性的情况下,实例属性优先级更高。

    静态方法中不需要额外定义参数,因此在静态方法中引用类属性的话,必须通过类对象来引用

  • 相关阅读:
    Python 模拟登录几种常见方法
    python 中列表 元组 字典 集合的区别
    Python3(十二) Pythonic与Python杂记
    Python3(十一) 原生爬虫
    Python3(十) 函数式编程: 匿名函数、高阶函数、装饰器
    Python3(九) 闭包
    Python3(八) 枚举详解
    Python3(七) 正则表达式与JSON
    Python3(六) 面向对象
    labix.org/mgo包连接池泄漏问题
  • 原文地址:https://www.cnblogs.com/xidianzxm/p/12264256.html
Copyright © 2011-2022 走看看