Python 中的名称修饰(name mangling)是什么意思?
What does name mangling mean in Python?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
分类: Python
标签: Name Mangling, Double Underscore, Inheritance
参考答案摘要
答案 名称修饰是 Python 对以双下划线开头的属性(如 __attr)进行“类名重写”的机制,会把属性名改写为 _ClassName__attr,以降低子类意外覆盖并实现“弱私有”效果。它并不是强制私有(仍可通过改写后的名字访问),更强调避免命名冲突与保护内部实现细节,常用于框架/继承层次较深的场景。
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。