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

    1、类和对象

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

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

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

    类的构成:

    1.类的名称:类名

    2.类的属性:一组数据

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

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

    2、类属性,实例属性

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

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

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

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

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

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

    4、总结:

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

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

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

  • 相关阅读:
    IEnumerable、ICollection、IList、List关系和区别
    在Winform界面中使用DevExpress的TreeList实现节点过滤查询的两种方式
    关键字Lock的简单小例子
    .NET Core DI简单介绍
    Linux服务器部署.Net Core笔记:六、安装MySQL
    表的透视变换
    ZedGraph怎样在生成曲线时随机生成不一样的颜色
    3、手写Unity容器--第N层依赖注入
    微信支付-小程序H5 公众号 Payment SDK
    WPF继续响应被标记为已处理事件的方法
  • 原文地址:https://www.cnblogs.com/xidianzxm/p/12264256.html
Copyright © 2011-2022 走看看