gpt4 book ai didi

swift - 在 Swift 中访问父类(super class)的私有(private)方法

转载 作者:可可西里 更新时间:2023-11-01 02:18:47 29 4
gpt4 key购买 nike

我想在其子类中使用父类(super class)的私有(private)成员和方法,但仍然不希望它们在实例级别可见。好吧,我认为 Swift 中没有这种可能性,因为它只有私有(private)/内部/公共(public)访问修饰符。但也许有一些解决方法?

我听说在其他语言中流行保护修饰符,但它实际上与我的观点相反。难道所有语言都没有这种可能吗?如果我的子类层次结构中经常需要这个东西,我是不是做错了什么?

最佳答案

您可以让子类访问其父类(super class)的私有(private)成员,但它必须与父类(super class)位于同一文件中。隐私适用于文件之外。文件中的任何内容都可以访问私有(private)成员。这不直观。这是一个简单的 Playground 来演示。由于 Bar 是在同一个文件中声明的,它可以访问 Fooprivate x 成员。 enter image description here

来自 Swift 编程语言 (Swift 2.1)访问级别,“私有(private)访问将实体的使用限制在其自己的文件中。”

关于swift - 在 Swift 中访问父类(super class)的私有(private)方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33312241/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com