0
点赞
收藏
分享

微信扫一扫

Python 静态属性——类的所有对象公用一个属性

夜空一星 2023-04-16 阅读 66


类的静态属性意味着无论创建多少个对象,他们都共用这一个属性。Python 的静态方法是有介绍的,但是Python的静态属性如何实现,却难以找到解决方案。经过不懈百度,终于,在网上看到一段神奇的代码,经测试,确实实现了静态属性的设置。经自己修改简化,特在此记录下来,以免以后忘记。

class Dog:
    def __init__(self):
        self.name = ""
    def set_name(self,newname):
        self.name  = newname
    def get_name(self):
        return self.name

class Parent:  # 定义父类
    mydog = Dog()
    mydog.set_name("hello")

    def __init__(self):
        print("Parent init")

    def setAttr(self, dog):
        Parent.mydog = dog

    def getAttr(self):
        return Parent.mydog


class Child(Parent):  # 定义子类
    def __init__(self):
        super().__init__()
        print("Child init")


if __name__ == '__main__':
    child1 = Child()
    child2 = Child()
    child3 = Child()


    print(child1, child1.getAttr())
    print(child2, child2.getAttr())
    print(child3, child3.getAttr())

 

举报

相关推荐

0 条评论