Maya Python基础: 类属性 VS 实例属性、实例方法、类方法、静态方法

目录

[一 类属性 VS 实例属性](#一 类属性 VS 实例属性)

[二 实例方法、类方法、静态方法](#二 实例方法、类方法、静态方法)


一 类属性 VS 实例属性

类属性 实例属性
位置 类内部, 方法外部 **init**或其他方法内部
共享性 所有实例共享 每个实例独有
访问方式 类名.属性名 or 实例.属性名 实例.属性名
python 复制代码
class Software:
    #类属性
    VERSION = '1.0'
    LANGUAGE = 'Chinese'
    
    def __init__(self,name):
        #实例属性
        self.name = name 
        
class App(Software):
     pass
        
    
software = Software('好学英语软件')
#修改类属性可以影响所有实例
Software.VERSION='2.0'
print(software.name)
print(software.VERSION)

app = App('好学app')
#子类可以继承父类的类属性和实例属性
print(app.name)
print(app.VERSION)

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

类方法和静态方法是两种特殊的方法类型, 与普通的实例方法有所不同

方法 实例方法 类方法 静态方法
介绍 操作实例状态的方法 操作类状态的方法 与类和实例都无关的工具方法
使用场景 需要访问对象时 需要访问类的时候 不需要访问对象和类时
装饰器 @classmethod @staticmethod
第一个参数 self(实例本身) cls(类本身) 无特殊参数
访问权限 可访问实例属性和类属性 只能访问类属性 实例属性和类属性都不能访问
python 复制代码
class Banji:
    teacher = '张老师'
   
    #构造方法
    def __init__(self,class_name):
        self.class_name = class_name
    
    #实例方法:可访问实例属性和类属性
    def instance_method(self,student_numbers):
        print(self.teacher+'的班级'+self.class_name+f'有{student_numbers}名学生') 
        return self.class_name + f'{student_numbers}'
        
    #类方法:只能访问类属性 
    @classmethod
    def get_teacher(cls):
        print(cls.teacher)
       
    #静态方法:实例属性和类属性都不能访问
    @staticmethod     
    def meeting():
        print('班级开会了')
  
banji = Banji('三年四班')
banji.instance_method(40)
banji.get_teacher()
banji.meeting()
相关推荐
yukai080083 小时前
【最后203篇系列】039 JWT使用
python
独好紫罗兰3 小时前
对python的再认识-基于数据结构进行-a006-元组-拓展
开发语言·数据结构·python
Dfreedom.3 小时前
图像直方图完全解析:从原理到实战应用
图像处理·python·opencv·直方图·直方图均衡化
铉铉这波能秀3 小时前
LeetCode Hot100数据结构背景知识之集合(Set)Python2026新版
数据结构·python·算法·leetcode·哈希算法
怒放吧德德4 小时前
Python3基础:基础实战巩固,从“会用”到“活用”
后端·python
aiguangyuan4 小时前
基于BERT的中文命名实体识别实战解析
人工智能·python·nlp
喵手4 小时前
Python爬虫实战:知识挖掘机 - 知乎问答与专栏文章的深度分页采集系统(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集知乎问答与专栏文章·采集知乎数据·采集知乎数据存储sqlite
铉铉这波能秀4 小时前
LeetCode Hot100数据结构背景知识之元组(Tuple)Python2026新版
数据结构·python·算法·leetcode·元组·tuple
kali-Myon4 小时前
2025春秋杯网络安全联赛冬季赛-day2
python·安全·web安全·ai·php·pwn·ctf
Olamyh4 小时前
【 超越 ReAct:手搓 Plan-and-Execute (Planner) Agent】
python·ai