面向对象一私有属性

2017-08-23  本文已影响0人  西多的大叔

class Person(object):

    def __init__(self):

           self.bingxiang = "电冰箱" # 普通属性,表示公共属性

          self._tv = "电视机" # 约定,一个下划线开头的,表示私有属性

          self.__baoxianxiang = "我家的保险箱" # 规则:两个下划线开头的属性,不能被外界直接访问

在对象中,提供set/get方法,来间接的访问对象的私有属性

给私有属性设置值的方法

    def set_baoxianxiang(self, bxx):

             self.__baoxianxiang = bxx

获取私有属性数据的方法

  def get_baoxianxaing(self):

        return self.__baoxianxiang

创建一个对象

p = Person()

print(p.bingxiang)

print(p._tv)

#print(p.__baoxianxiang)

print(p.get_baoxianxaing())

在Python中就算继承也不能相互访问私有变量,父类访问子类的私有属性也不可以

上一篇下一篇

猜你喜欢

热点阅读