微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

swift – 如何将计算属性的’setter’设置为private?

我知道如何将存储属性的“setter”设置为private(例如public private(set)var name:String =“John”)但是我们如何将计算属性的“setter”设置为private?在这种情况下,变量’age’的’setter’.当我试图将一个关键字私有放在set(newAge){}之前时,XCode会显示错误.那么可以将计算属性的“setter”设置为private吗?

public class Person {

    public private(set) var name: String = "John"

    var age: Int{
        get {
            return 10
        }
        set(newAge){ // how to set this setter to private so to restrict modification

        }
    }
}

解决方法

您可以使用与存储属性相同的方式执行此操作:

private(set) var age: Int{
        get {
            return 10
        }
        set(newAge) {
            // setter code here
        }
    }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐