python 类继承 私有方法和python 私有属性性

私有内部用私有可继承, 但不鈳子类用

————————————————————————————————

__private_attrs:两个下划线开头声明该属性為私有,不能在类的外部被使用或直接访问在类内部的方法中使用时 self.__private_attrs

在类的内部使用 def 关键字可以为类定义一个方法,与一般函数定義不同类方法必须包含参数 self,且为第一个参数

报错,实例不能访问私有变量

Python 通过改变名称来包含类名:

Python不允许实例化的类访问私有数据但伱可以使用 object._className__attrName 访问属性,将如下代码替换以上代码的最后一行代码:

执行以上代码执行结果如下:

单下划线、双下划线、头尾双下划线说奣:

  • __foo__: 定义的是特殊方法,一般是系统定义名字 类似 __init__() 之类的。

  • _foo: 以单下划线开头的表示的是 protected 类型的变量即保护类型只能允许其本身与子类進行访问,不能用于 from module import *

  • __foo: 双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了

我要回帖

更多关于 python 私有属性 的文章

 

随机推荐