加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

我什么时候在swift中使用self访问属性?

发布时间:2020-12-14 06:07:43 所属栏目:百科 来源:网络整理
导读:在这样一个简单的例子中,我可以省略自我参考backgroundLayer,因为它是明确的backgroundLayer backgroundColor设置。 class SpecialView: UIView { let backgroundLayer = CAShapeLayer() init() { backgroundLayer.backgroundColor = UIColor.greenColor()
在这样一个简单的例子中,我可以省略自我参考backgroundLayer,因为它是明确的backgroundLayer backgroundColor设置。
class SpecialView: UIView {
    let backgroundLayer = CAShapeLayer()

    init() {
        backgroundLayer.backgroundColor = UIColor.greenColor().CGColor
    }
}

但是,就像在Objective-C中一样,我们可以通过添加类似命名的局部变量(或常量)来混淆事物。现在backgroundColor正在非形状图层上设置:

class SpecialView: UIView {
    let backgroundLayer = CAShapeLayer()

    init() {
        var backgroundLayer = CALayer()

        backgroundLayer.backgroundColor = UIColor.greenColor().CGColor
    }
}

(这是通过使用self.backgroundLayer.backgroundColor解决)

在Objective-C中,我总是避免使用属性的属性,属性总是以自我为前缀。我不必担心ivars在swift,但还有其他考虑,当我应该使用self在swift?

我不相信有任何理由,除了局部变量具有相同的名称或在闭包内需要self。就个人而言,我更喜欢总是写“自我”,因为:

>这是一个瞬间和明显的迹象,变量是一个属性。这是很重要的,因为它是属性意味着它的状态可以变化更广泛和不同的方式,而不是局部变量。此外,更改属性比更改局部变量具有更大的影响。>如果您决定引入与属性名称相同的参数或变量,则不需要更新代码>代码可以轻松地复制进出需要自我的闭包

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读