Python public private
来源:互联网 发布:德奥关系 知乎 编辑:程序博客网 时间:2024/06/06 10:00
2. __object__ # special, python system use, user should not define like it
3. __object # private (name mangling during runtime)
4. _object # obey python coding convention, consider it as private
python有关private的描述,python中不存在protected的概念,要么是public要么就是private,但是python中的private不像C++, Java那样,它并不是真正意义上的private,通过name mangling(名称改编(目的就是以防子类意外重写基类的方法或者属性),即前面加上“单下划线”+类名,eg:_Class__object)机制就可以访问private了。
1.class Foo():
2. def __init__():
3. ...
4.
5. def public_method():
6. print 'This is public method'
7.
8. def __fullprivate_method():
9. print 'This is double underscore leading method'
10.
11. def _halfprivate_method():
12. print 'This is one underscore leading method'
实例化Foo的一个对象,
1. f = Foo()
1. f.public_method() # OK
2.
3. f.__fullprivate_method() # Error occur
4.
5. f._halfprivate_method() # OK
6.
7. f._Foo__fullprivate()_method() # OK
class A(object): def __init__(self): self.__private() self.public() def __private(self): print 'A.__private()' def public(self): print 'A.public()'class B(A): def __private(self): print 'B.__private()' def public(self): print 'B.public()'b = B()初探 正确的答案是:A.__private()B.public()
- [Python]private and public
- Python public private
- python中private和public方法
- public,private
- public,private
- python的 public 、private成员变量、成员函数总结
- private public protected
- public, protected, private,
- public,private protected
- 关于public,protected,private
- public protected private区别
- public / protected / private / virtual
- private、protected、public........
- private改为public
- public private protected 区别
- public,private,protected 区别
- C++ public protected private
- public,private,protected
- 23种设计模式
- UIImage 加载性能优化
- BZOJ2502: 清理雪道
- Xamarin.iOS + MvvmCross: UIPickerView data binding, SelectedItemChanged event
- PAT BASIC 1002
- Python public private
- Ubuntu系统右键菜单改造
- 第四章:语句
- POJ 2425.A Chess Game【博弈论(SG函数)】【4月6】
- N的阶乘后有多少0
- PAT BASIC 1003
- Android Touch事件传递机制
- Caffe学习系列(21):caffe图形化操作工具digits的安装与运行
- OpenCV cvMat的使用