文章目录

  • 前言
  • 一、类属性和实例属性
  • 二、关于__init__(self)方法的应用场景
  • 三、类方法/类属性和静态方法
  • 总结

前言

类方法/属性,静态方法,__init__(self)方法的使用场景以及含义。


一、类属性和实例属性

实例属性:self.属性名 = 值

 定义实例属性:方法内部(第一个参数为self的方法)。

要求:实例的所有属性,都要在__init__方法中定义。

因为__init__是创建对象时,自动调用的。一旦创建对象,对象就拥有属性了。

修改实例属性的值:
在实例方法当中,通过self.实例属性 = 值   去修改。

类属性:类名下面,属性名 = 值 (所有对象都是一样的。不会因对象不同而改变)

二、关于__init__方法:

1、什么时候需要在类当中实现__init__方法

1)有初始化工作、准备工作

2)类中其它的方法都要访问的公共变量,则设置为实例属性。

没有return

2、什么时候需要设置实例属性?

多个实例方法都需要访问同一变量/属性时,则在初始化当中设置为实例属性。

实例方法(属性):第一参数为self的方法。

调用:只有对象可以调用。

三、类方法/类属性 和 静态方法

类方法(属性):方法名上有@classmethod;方法参数第一个为cls

        调用:类名就可以调用。实例也是可以调用的。

静态方法: 方法名上有@staticmethod; 没有任何固定的参数。 

        普通的函数,搬到类里面。跟self和cls都没有啥关系。

调用:类名就可以调用。实例也是可以调用的。

注意:

1、类属性:直接在类定义中,属性名 = 值
2、类方法: @classmethod    参数为cls。
          类方法可访问类属性,不能访问实例属性。
          不是实例的特性,所有实例的共同特征。
          实例/类均可访问。

补充:

使用 类方法修改类属性


总结

暂无

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐