python 私有属性的作用


python 私有属性的作用

class Player():
    def __init__(self, name, power, skill):
        self.name = name
        self.power = power
        self.skill = skill

    def print_role(self):
        print(('%s: %s %s')%(self.name,self.power,self.skill))

    def updateName(self, new_name):
        self.name = new_name

user1 = Player('tom',100,'police')
user1.print_role()              #tom: 100 police

user1.updateName('jack')        # 可以更新名字
user1.print_role()              #jack: 100 police
 user1.name = 'mark'             # 可以更新名字
user1.print_role()             #mark: 100 police

当属性变成私有属性之后,只能通过方法来更改属性值,避免了属性直接被强制修改

class Player():
    def __init__(self, name, power, skill):
        self.__name = name
        self.power = power
        self.skill = skill

    def print_role(self):
        print(('%s: %s %s')%(self.__name,self.power,self.skill))

    def updateName(self, new_name):
        self.__name = new_name

user1 = Player('tom',100,'police')
user1.print_role()            #tom: 100 police

user1.updateName('jack')      #可以更新名字
user1.print_role()            #jack: 100 police
 user1.__name = 'lili'         #无法更新名字
user1.print_role()            #jack: 100 police
 user1.name = 'mark'           #无法更新名字
user1.print_role()            #jack: 100 police

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

python 私有属性的作用


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM