面向对象编程——类变量(属性)添加变量的两种方法解析
在我们初学python的时候,当我们给类添加对象时,发现有两种写法。为此我们产生疑惑,都是输出同样的值,为啥会出现两种写法呢?
第一种写法:
class Hahaha: print(Hahaha.count) |
第二种写法:
class Hahaha: Hahaha.count = 1 |
本质区别:
虽然两种写法的结果相同,但它们的本质区别在于:
1.第一种写法是声明式的,count是类的一部分,属于类的初始定义。
2.第二种写法是动态式的,count是在类定义之后动态添加的,不属于类的初始定义。
两种代码的使用场景分类:
-
第一种写法(在类定义体中定义类变量):
-
更适合在类的设计阶段,明确表示某些属性是类的一部分。
-
代码更清晰,语义更明确。
-
-
第二种写法(动态添加类属性):
-
更适合在运行时动态修改类的结构。
-
提供了更大的灵活性,但可能会降低代码的可读性和维护性。
-
原文地址:https://blog.csdn.net/m0_59247951/article/details/145265191
免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!