news 2026/7/20 11:27:54

类变量和实例变量在继承中的表现有什么不同?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
类变量和实例变量在继承中的表现有什么不同?

类变量与实例变量在继承中的行为差异

一、核心结论先记牢

  1. 类变量支持继承:子类可读取父类类变量;子类赋值同名类变量会独立一份,不影响父类;父类修改类变量会同步所有未重写该变量的子类。
  2. 实例变量不继承:实例变量属于单个对象,仅创建实例时在__init__生成,子类不调用父类构造函数就拿不到父类实例变量。

二、类变量在继承里的完整表现

1. 子类可直接读取父类类变量

子类自身没有同名类变量时,查找链向上找到父类:

python

运行

class Parent: school = "一中" class Child(Parent): pass print(Child.school) # 一中,继承父类类变量

2. 子类给同名类变量赋值 → 隔离,互不影响

子类Child.xxx = 值会在子类自己的命名空间新建类变量,父类完全不受影响

python

运行

Parent.school = "一中" Child.school = "二中" print(Parent.school) # 一中 print(Child.school) # 二中

3. 修改父类类变量,会同步所有未重写该变量的子类

python

运行

class Parent: count = 0 class Child1(Parent): pass class Child2(Parent): count = 100 # 子类重写,独立 Parent.count = 999 print(Child1.count) # 999(未重写,跟随父类变化) print(Child2.count) # 100(已重写,不受父类影响)

4. 实例读取类变量的查找顺序

实例。变量 → 实例自身属性 → 当前子类类变量 → 父类类变量

python

运行

p = Parent() c = Child() print(c.school) # 先找Child,再找Parent

5. 踩坑:子类实例直接赋值同名类变量

obj.var = x只会给实例新增实例变量,不会修改父 / 子类类变量:

python

运行

c = Child() c.school = "三中" print(Child.school) # 二中 不变 print(c.school) # 三中(实例变量遮蔽)

三、实例变量在继承里的完整表现

1. 实例变量不会自动继承

父类的self.xxx只属于父类实例,子类不调用super().__init__(),完全无法获取:

python

运行

class Parent: def __init__(self): self.name = "父类" class Child(Parent): def __init__(self): # 没调用super,父类构造没执行 pass c = Child() # print(c.name) 报错 AttributeError

2. 调用 super () 才会拥有父类实例变量

python

运行

class Child(Parent): def __init__(self): super().__init__() # 执行父类构造,生成父类实例变量 self.age = 12 # 子类自己的实例变量 c = Child() print(c.name) # 父类(继承得到) print(c.age) # 12(子类自有)

3. 父子实例变量相互独立

子类修改self.name,只会覆盖当前实例的属性,不会影响父类实例:

python

运行

p = Parent() c = Child() c.name = "子类" print(p.name) # 父类 print(c.name) # 子类

4. 子类无法通过类访问父类实例变量

实例变量绑定对象,类看不到任何实例属性:

python

运行

# Parent.name / Child.name 全部报错

四、关键对比表

表格

行为类变量实例变量
是否可继承读取✅ 子类可直接读取父类类变量❌ 不会自动继承,必须 super ()
子类赋值同名变量生成子类独立类变量,父类不变生成当前实例独立属性,不影响父类实例
修改父类源头所有未重写的子类同步变化只影响父类自己的实例,和子类无关
类名能否访问✅ Parent.xxx / Child.xxx❌ 类无法访问实例变量
多实例共享同一类下所有实例共享一份每个实例独立一份
查找层级实例→子类→父类仅当前实例自身

五、综合完整示例

python

运行

class Parent: # 父类类变量 cls_city = "北京" def __init__(self): # 父类实例变量 self.parent_ins = "父实例属性" class Child(Parent): pass # 1. 类变量继承读取 print(Child.cls_city) # 北京 # 2. 子类重写类变量,隔离 Child.cls_city = "上海" print(Parent.cls_city) # 北京 print(Child.cls_city) # 上海 # 3. 实例变量必须super才能获取 c = Child() # print(c.parent_ins) 报错 class Child2(Parent): def __init__(self): super().__init__() self.child_ins = "子实例属性" c2 = Child2() print(c2.parent_ins) # 父实例属性 print(c2.child_ins) # 子实例属性

六、一句话总结

  1. 类变量是沿着继承链共享的类级属性,子类不重写就共用父类数据,重写后完全隔离;
  2. 实例变量只属于单个对象,不存在继承关系,只有主动调用父类构造函数,实例上才会附带父类定义的实例变量。
  3. mp.jcswjw.cn
    www.jcswjw.cn
    jcswjw.cn
    mp.jcswjw.cn/article/A2b5C7d1E9.html
    mp.jcswjw.cn/article/B3c6D8e2F0.html
    mp.jcswjw.cn/article/C4d7E9f3G1.html
    mp.jcswjw.cn/article/D5e8F0g4H2.html
    mp.jcswjw.cn/article/E6f9G1h5I3.html
    mp.jcswjw.cn/article/F7g0H2i6J4.html
    mp.jcswjw.cn/article/G8h1I3j7K5.html
    mp.jcswjw.cn/article/H9i2J4k8L6.html
    mp.jcswjw.cn/article/I0j3K5l9M7.html
    mp.jcswjw.cn/article/J1k4L6m0N8.html
    mp.jcswjw.cn/article/K2l5M7n1O9.html
    mp.jcswjw.cn/article/L3m6N8o2P0.html
    mp.jcswjw.cn/article/M4n7O9p3Q1.html
    mp.jcswjw.cn/article/N5o8P0q4R2.html
    mp.jcswjw.cn/article/O6p9Q1r5S3.html
    mp.jcswjw.cn/blog/P7q0R2s6T4.html
    mp.jcswjw.cn/blog/Q8r1S3t7U5.html
    mp.jcswjw.cn/blog/R9s2T4u8V6.html
    mp.jcswjw.cn/blog/S0t3U5v9W7.html
    mp.jcswjw.cn/blog/T1u4V6w0X8.html
    mp.jcswjw.cn/blog/U2v5W7x1Y9.html
    mp.jcswjw.cn/blog/V3w6X8y2Z0.html
    mp.jcswjw.cn/blog/W4x7Y9z3A1.html
    mp.jcswjw.cn/blog/X5y8Z0a4B2.html
    mp.jcswjw.cn/blog/Y6z9A1b5C3.html
    mp.jcswjw.cn/blog/Z7a0B2c6D4.html
    mp.jcswjw.cn/article/a8b1C3d7E5.html
    mp.jcswjw.cn/article/b9c2D4e8F6.html
    mp.jcswjw.cn/article/c0d3E5f9G7.html
    mp.jcswjw.cn/article/d1e4F6g0H8.html
    mp.jcswjw.cn/article/e2f5G7h1I9.html
    mp.jcswjw.cn/article/f3g6H8i2J0.html
    mp.jcswjw.cn/article/g4h7I9j3K1.html
    mp.jcswjw.cn/article/h5i8J0k4L2.html
    mp.jcswjw.cn/article/i6j9K1l5M3.html
    mp.jcswjw.cn/article/j7k0L2m6N4.html
    mp.jcswjw.cn/article/k8l1M3n7O5.html
    mp.jcswjw.cn/article/l9m2N4o8P6.html
    mp.jcswjw.cn/article/m0n3O5p9Q7.html
    mp.jcswjw.cn/article/n1o4P6q0R8.html
    mp.jcswjw.cn/article/o2p5Q7r1S9.html
    mp.jcswjw.cn/article/p3q6R8s2T0.html
    mp.jcswjw.cn/article/q4r7S9t3U1.html
    mp.jcswjw.cn/article/r5s8T0u4V2.html
    mp.jcswjw.cn/article/s6t9U1v5W3.html
    mp.jcswjw.cn/article/t7u0V2w6X4.html
    mp.jcswjw.cn/article/u8v1W3x7Y5.html
    mp.jcswjw.cn/article/v9w2X4y8Z6.html
    mp.jcswjw.cn/article/w0x3Y5z9A7.html
    mp.jcswjw.cn/article/x1y4Z6a0B8.html
    bbs.jcswjw.cn/article/A3b6C8d2E0.html
    bbs.jcswjw.cn/article/B4c7D9e3F1.html
    bbs.jcswjw.cn/article/C5d8E0f4G2.html
    bbs.jcswjw.cn/article/D6e9F1g5H3.html
    bbs.jcswjw.cn/article/E7f0G2h6I4.html
    bbs.jcswjw.cn/article/F8g1H3i7J5.html
    bbs.jcswjw.cn/article/G9h2I4j8K6.html
    bbs.jcswjw.cn/article/H0i3J5k9L7.html
    bbs.jcswjw.cn/article/I1j4K6l0M8.html
    bbs.jcswjw.cn/article/J2k5L7m1N9.html
    bbs.jcswjw.cn/article/K3l6M8n2O0.html
    bbs.jcswjw.cn/article/L4m7N9o3P1.html
    bbs.jcswjw.cn/article/M5n8O0p4Q2.html
    bbs.jcswjw.cn/article/N6o9P1q5R3.html
    bbs.jcswjw.cn/article/O7p0Q2r6S4.html
    bbs.jcswjw.cn/blog/P8q1R3s7T5.html
    bbs.jcswjw.cn/blog/Q9r2S4t8U6.html
    bbs.jcswjw.cn/blog/R0s3T5u9V7.html
    bbs.jcswjw.cn/blog/S1t4U6v0W8.html
    bbs.jcswjw.cn/blog/T2u5V7w1X9.html
    bbs.jcswjw.cn/blog/U3v6W8x2Y0.html
    bbs.jcswjw.cn/blog/V4w7X9y3Z1.html
    bbs.jcswjw.cn/blog/W5x8Z0a4A2.html
    bbs.jcswjw.cn/blog/X6y9A1b5B3.html
    bbs.jcswjw.cn/blog/Y7z0B2c6C4.html
    bbs.jcswjw.cn/blog/Z8a1C3d7D5.html
    bbs.jcswjw.cn/article/a9b2D4e8E6.html
    bbs.jcswjw.cn/article/b0c3E5f9F7.html
    bbs.jcswjw.cn/article/c1d4F6g0G8.html
    bbs.jcswjw.cn/article/d2e5G7h1H9.html
    bbs.jcswjw.cn/article/e3f6H8i2I0.html
    bbs.jcswjw.cn/article/f4g7I9j3J1.html
    bbs.jcswjw.cn/article/g5h8J0k4K2.html
    bbs.jcswjw.cn/article/h6i9K1l5L3.html
    bbs.jcswjw.cn/article/i7j0L2m6M4.html
    bbs.jcswjw.cn/article/j8k1M3n7N5.html
    bbs.jcswjw.cn/article/k9l2N4o8O6.html
    bbs.jcswjw.cn/article/l0m3O5p9P7.html
    bbs.jcswjw.cn/article/m1n4P6q0Q8.html
    bbs.jcswjw.cn/article/n2o5Q7r1R9.html
    bbs.jcswjw.cn/article/o3p6R8s2S0.html
    bbs.jcswjw.cn/article/p4q7S9t3T1.html
    bbs.jcswjw.cn/article/q5r8T0u4U2.html
    bbs.jcswjw.cn/article/r6s9U1v5V3.html
    bbs.jcswjw.cn/article/s7t0V2w6W4.html
    bbs.jcswjw.cn/article/t8u1W3x7X5.html
    bbs.jcswjw.cn/article/u9v2X4y8Y6.html
    bbs.jcswjw.cn/article/v0w3Y5z9Z7.html
    bbs.jcswjw.cn/article/w1x4Z6a0A8.html
    bbs.jcswjw.cn/article/x2y5A7b1B9.html
    jcswjw.cn/blog/03YR2B47.html
    www.jcswjw.cn/blog/92XQ1C36.html
    jcswjw.cn/blog/81WP0D25.html
    www.jcswjw.cn/article/70VO9E14.html
    jcswjw.cn/article/69UN8F03.html
    jcswjw.cn/blog/58TM7G92.html
    www.jcswjw.cn/blog/47SL6H81.html
    jcswjw.cn/blog/36RK5I70.html
    www.jcswjw.cn/article/25QJ4J69.html
    jcswjw.cn/article/14PI3K58.html
    jcswjw.cn/blog/03OH2L47.html
    www.jcswjw.cn/blog/92NG1M36.html
    jcswjw.cn/blog/81MF0N25.html
    www.jcswjw.cn/article/70LE9O14.html
    jcswjw.cn/article/69KD8P03.html
    jcswjw.cn/blog/58JC7Q92.html
    www.jcswjw.cn/blog/47IB6R81.html
    jcswjw.cn/blog/36HA5S70.html
    www.jcswjw.cn/article/25GZ4T69.html
    jcswjw.cn/article/14FY3U58.html
    jcswjw.cn/blog/03EX2V47.html
    www.jcswjw.cn/blog/92DW1W36.html
    jcswjw.cn/blog/81CV0X25.html
    www.jcswjw.cn/article/70BU9Y14.html
    jcswjw.cn/article/69AT8Z03.html
    jcswjw.cn/blog/58ZS7A92.html
    www.jcswjw.cn/blog/47YR6B81.html
    jcswjw.cn/blog/36XQ5C70.html
    www.jcswjw.cn/article/25WP4D69.html
    jcswjw.cn/article/14VO3E58.html
    jcswjw.cn/blog/03UN2F47.html
    www.jcswjw.cn/blog/92TM1G36.html
    jcswjw.cn/blog/81SL0H25.html
    www.jcswjw.cn/article/70RK9I14.html
    jcswjw.cn/article/69QJ8J03.html
    jcswjw.cn/blog/58PI7K92.html
    www.jcswjw.cn/blog/47OH6L81.html
    jcswjw.cn/blog/36NG5M70.html
    www.jcswjw.cn/article/25MF4N69.html
    jcswjw.cn/article/14LE3O58.html
    jcswjw.cn/blog/03KD2P47.html
    www.jcswjw.cn/blog/92JC1Q36.html
    jcswjw.cn/blog/81IB0R25.html
    www.jcswjw.cn/article/70HA9S14.html
    jcswjw.cn/article/69GZ8T03.html
    jcswjw.cn/blog/2SJM9QS3.html
    jcswjw.cn/article/UZYQL8U3.html
    www.jcswjw.cn/blog/UZWCLDDU.html
    jcswjw.cn/blog/QCOUT7B2.html
    www.jcswjw.cn/article/E5GYHNKW.html
    www.jcswjw.cn/blog/9TRXFMHC.html
    jcswjw.cn/article/U1M1BHF9.html
    www.jcswjw.cn/article/W6R5LPQ9.html
    jcswjw.cn/blog/N50EZFZG.html
    jcswjw.cn/article/G1HB7ZVF.html
    www.jcswjw.cn/blog/NU1RUJKF.html
    www.jcswjw.cn/article/2CTMMG6T.html
    www.jcswjw.cn/article/QIOAHL4L.html
    jcswjw.cn/article/IUJNJN6O.html
    jcswjw.cn/blog/QLM5KHWQ.html
    www.jcswjw.cn/blog/A34GGOQQ.html
    jcswjw.cn/article/O3LDZA38.html
    www.jcswjw.cn/article/BG4VP7JT.html
    jcswjw.cn/article/3BVWH5K8.html
    jcswjw.cn/blog/0X82J0IY.html
    www.jcswjw.cn/article/H29K4N4X.html
    jcswjw.cn/article/JFBH6JU2.html
    www.jcswjw.cn/blog/YZ5OWWTD.html
    jcswjw.cn/blog/9D5OCP7Q.html
    www.jcswjw.cn/article/52ERFXVB.html
    www.jcswjw.cn/blog/UHHV3C39.html
    jcswjw.cn/blog/KZ2Z56LL.html
    jcswjw.cn/article/PPMKKSS9.html
    jcswjw.cn/article/RYPUPKVJ.html
    www.jcswjw.cn/article/UDDX3CUA.html
    jcswjw.cn/article/91OMABSW.html
    jcswjw.cn/article/1XVM27UY.html
    jcswjw.cn/article/B38SYZCN.html
    jcswjw.cn/article/UMRRHM9O.html
    www.jcswjw.cn/article/B3N1FU51.html
    jcswjw.cn/article/E8UIJODZ.html
    jcswjw.cn/blog/X7IEDBSA.html
    www.jcswjw.cn/article/YUAVBR11.html
    jcswjw.cn/article/LP1ZJYV3.html
    jcswjw.cn/blog/EGGUSSEQ.html
    jcswjw.cn/article/PJCYFZV5.html
    www.jcswjw.cn/blog/451O0KLJ.html
    www.jcswjw.cn/article/UR1ZJ8C2.html
    jcswjw.cn/blog/QXI5H62Y.html
    www.jcswjw.cn/blog/VBJB32JI.html
    jcswjw.cn/blog/1QQF4WGJ.html
    jcswjw.cn/blog/E8ZC81MQ.html
    www.jcswjw.cn/article/32ANP7AN.html
    jcswjw.cn/article/1OWXM3NZ.html
    www.jcswjw.cn/blog/89S7D65C.html
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/20 11:27:05

全新升级IM聊天软件上线|企业级即时通讯系统定制部署方案

全新升级IM聊天软件上线|企业级即时通讯系统定制部署方案 🚀 全新升级!IM聊天软件正式上线! 熟悉的使用体验,更强大的系统能力,全平台应用生态持续完善,为企业与团队提供更加稳定、高效的即时通…

作者头像 李华
网站建设 2026/7/20 11:27:03

VC++编程从入门到实践:现代Windows开发环境搭建与核心技能精讲

1. 项目概述:为什么VC在今天依然值得投入?如果你在搜索引擎里敲下“VC编程从入门到实践”,大概率会看到两种声音:一种是“都什么年代了还学VC?”,另一种是“工业软件、游戏引擎、金融交易系统,哪…

作者头像 李华
网站建设 2026/7/20 11:26:59

解决Windows Python安装包报错:Microsoft Visual C++ 14.0缺失的四种方案

1. 问题本质与根源剖析如果你在Windows上用Python的pip安装某些第三方包时,突然蹦出来一个“error: Microsoft Visual C 14.0 or greater is required.”的红色错误,先别急着骂娘,也别慌。这几乎是每个Windows平台Python开发者都会踩的坑&…

作者头像 李华
网站建设 2026/7/20 11:26:56

三方聊天软件工具定制开发|打造安全稳定的企业级IM通讯解决方案

** ** 随着企业数字化沟通需求不断提升,稳定、高效、安全的即时通讯系统已经成为团队协作的重要基础。我们专注于 IM聊天软件工具定制开发与私有化部署,为企业提供灵活可扩展的通讯解决方案,满足不同业务场景下的沟通需求。 🚀 核…

作者头像 李华
网站建设 2026/7/20 11:26:38

深入解析TMS320F28P65x系统控制与中断寄存器:从原理到实战

1. 项目概述:深入TMS320F28P65x的系统控制与中断寄存器在嵌入式开发,尤其是工业控制、电机驱动和数字电源这些对实时性和可靠性要求极高的领域,我们这些工程师打交道最多的,往往不是那些花哨的算法,而是芯片最底层的寄…

作者头像 李华
网站建设 2026/7/20 11:26:32

空洞骑士模组管理器Scarab:新手入门终极指南

空洞骑士模组管理器Scarab:新手入门终极指南 【免费下载链接】Scarab An installer for Hollow Knight mods written with Avalonia. 项目地址: https://gitcode.com/gh_mirrors/sc/Scarab 想要为《空洞骑士》安装模组却不知道如何开始?Scarab模组…

作者头像 李华