首页 > 后端开发 > Python教程 > 为什么Python没有真正的私有类变量?

为什么Python没有真正的私有类变量?

Mary-Kate Olsen
发布: 2024-12-12 18:25:10
原创
567 人浏览过

Why Doesn't Python Have True Private Class Variables?

为什么 Python 缺少“私有”类变量?

在 Java 中,通常的做法是使用“public”、“private”和“ protected”来控制类变量的可见性。然而,Python 采用了不同的方法,引发了关于此类修饰符的必要性的问题。

最初,在 Python 中,人们可以简单地通过在构造函数中赋值来创建实例变量,如 中提到的代码片段所示询问。这引起了对修改类外部变量的担忧,而 Java 中的访问修饰符明确阻止了这种情况。

这种差异的答案在于 Python 的文化规范。与 Java 不同,Python 强调代码所有权的概念,不鼓励修改属于其他类的变量的做法。它假设开发人员将负责任地行事并遵守既定惯例。

对于那些寻求表面隐私的人,Python 根据 PEP 8 指南提供了 __ 前缀选项。此前缀修改变量的名称,使其在其名称空间之外不那么可见。然而,需要注意的是,这种方法并不是万无一失的,有决心的个人仍然可以访问这些变量。

相反,_ 前缀通常用于指示变量仅供内部使用类或模块。虽然从技术上讲可以从外部访问,但该约定不鼓励直接操作,而是作为开发人员之间合作的礼貌请求。

最终,Python 缺乏显式访问修饰符依赖于程序员之间尊重其他类边界的共同理解' 变量。这种方法营造了一个协作环境,让开发人员可以相信他们的代码将得到负责任的处理。

以上是为什么Python没有真正的私有类变量?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板