史上最全Python面向对象编程(8)
发布时间:2019-03-26 14:51 所属栏目:21 来源:浪子燕青
导读:使用get-set-del方法操作私有成员 classobj: def__init__(self,name): self.name=name defprin(self): printself.name __age=18 #加上双下划线的就是私有变量,只能在类的内部访问,外部无法访问 @classmethod #如
使用get-set-del方法操作私有成员
思考: 既然是私有变量,不让外部访问,为何有要在后面调用又改变呢?因为可以对私有变量进行额外的检测,处理,加工等等。比如判断value的值,使用isinstance然后做if-else判断。 使用私有变量可以对内部变量进行保护,外部无法改变,但是可以对它进行检测处理。 这里引申一下私有成员的保护机制,使用__age对私有变量其实就是—>obj._obj__age的样子进行保护,说白了你直接使用obj._obj__age就可以直接调用内部私有变量age了。 Propety装饰器把类的方法伪装成属性调用的方式,就是把类里面的一个函数,变成一个属性一样的东西~ 一开始调用类的方法要使用圆括号,现在变成了属性进行读取设置存储。 举个例子来说明: 常用的调用方法
使用装饰器
当然这种调用方法有些麻烦,每次都是一个一个去实例类与对象,有个更加简单直观的方法。 更加减半的使用property()函数 (编辑:ASP站长网) |
相关内容
网友评论
推荐文章
热点阅读