Swift 4.2是否可以直接支持可以通过继承编写的私有setter?

问题描述 投票:0回答:1

我想在Swift中真正写下以下代码的等价物:

public class A {
    public fileprivate(set) a: Int = 0
}

所以我可以这样做:

public class B: A {
    public func updateA() { a = 1 }
}

当然不需要任何额外的_a成员。

可能吗?

旁注:我知道公共私有(set)的存在,但是这会阻止通过继承进行写入。

private setter swift4.2
1个回答
0
投票

不,这在swift中仍然不可能,这也是针对访问控制范例的

如果私有变量能够从外部设置而不是保密,则可以使用内部变量或公共变量

© www.soinside.com 2019 - 2024. All rights reserved.