当前位置: 首页 > 面试题库 >

Python“受保护”属性

乐寒
2023-03-14
问题内容

如何从子类访问父类的私有属性(不公开)?


问题答案:

我对Python约定的理解是

  • _member受保护
  • __member是私人的

如果您控制父类的选项

  • 保护它而不是私有,因为这似乎是您真正想要的
  • 使用吸气剂(@property def _protected_access_to_member …)来限制受保护的访问

如果你不控制它

  • 撤消名称修改。如果您使用dir(object),则会看到类似_Class__member的名称,这是Python导致__使其“私有”的方式。python中没有真正私有的。这可能被认为是邪恶的。


 类似资料:
  • 6xx受保护 600 Series,Repliesregardingconfidentialityandintegrity 631 Integrityprotectedreply. 632 Confidentialityandintegrityprotectedreply. 633 Confidentialityprotectedreply.

  • 问题内容: 如何在受保护的python类中定义一个方法,只有子类才能看到它? 这是我的代码: 我只希望看到的方法的子类。 问题答案: Python不像C ++ / Java / C#支持访问保护。一切都是公开的。座右铭是:“我们都是成年人。” 记录下您的课程,并坚持要求您的合作者阅读并遵守文档。 Python的文化是,以下划线开头的名称意味着:“除非您真正知道应该使用这些名称,否则请不要使用它们。

  • 问题内容: 为什么定义中的所有方法都是隐式的?为什么不允许使用方法? 问题答案: 因为接口应该表示“您可以在课堂外看到的东西”。添加非公共方法是没有意义的。

  • 面向对象编程最重要的原则之一 —— 将内部接口与外部接口分隔开来。 在开发比 “hello world” 应用程序更复杂的东西时,这是“必须”遵守的做法。 为了理解这一点,让我们脱离开发过程,把目光转向现实世界。 通常,我们使用的设备都非常复杂。但是,将内部接口与外部接口分隔开来可以让我们使用它们且没有任何问题。 一个现实生活中的例子 例如,一个咖啡机。从外面看很简单:一个按钮,一个显示器,几个洞

  • 在< code>/users下,我有一些需要身份验证令牌的路由,还有一些不需要。为了实现这一点,我做了以下工作。 然后我按照以下方式安装这些路线。 当我向< code>/users发送POST时,它运行预期的路径,但是当< code>next()被调用时,< code > protected _ middleware 运行。这是因为它在标有“D”的行中找到了下一个< code>/users定义。

  • 我正在尝试使用SAML保护资源。有三个参与者在起作用:身份提供者(IDP,在我的控制范围之外)、服务提供者(SP,我碰巧在使用spring security saml,但这个问题并不特定于此),以及受保护的资源(PR,SP之外服务中的某个受保护endpoint)。 我需要支持两种场景: 用户第一次尝试访问PR,没有任何会话 对于场景1应该如何工作,有足够的指导,因为根据我所看到的,这是使用SAML

  • 问题内容: 关键字授予对相同包和子类(http://java.sun.com/docs/books/tutorial/java/javaOO/accesscontrol.html)中的类的访问权限。 现在,每个类都有一个超类(http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html)。 因此,我得出结论,即使每个类都可以访问的方法。

  • 问题内容: 我有一个要获取和设置一些受保护属性的对象。该对象看起来像 我想获取对象的属性。当我尝试或它产生错误。我搜索并找到了要使用的解决方案。它在我本地但在服务器上的PHP版本上工作,因此我不能在此使用此功能。那么任何解决方案如何获得这种财产? 问题答案: 这就是“受保护”的含义,正如“ 可见性”一章所解释的: 声明为protected的成员只能在该类内部以及继承的和父类访问。 如果需要从外部访