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

swift自学笔记(五)(重写属性、final)

发布时间:2020-12-14 07:19:57 所属栏目:百科 来源:网络整理
导读://************ 重写父类的存储属性 ***********// class car { var name: String = "b" } class trunk: car { override var name: String { get { return super . name } set { super . name = newValue } } } var tt = trunk () tt . name = "tom" //*****


//************重写父类的存储属性***********//

class car {

var name:String = "b"

}


class trunk: car {

override var name:String {

get {

return super.name

}

set {

super.name = newValue

}

}

}

var tt = trunk()

tt.name = "tom"


//*************重写父类的计算属性*********//

class Ccircle {

var PI:Double {

return 3.14

}

}


class ccc: Ccircle {

override var PI:Double {

get {

return 55

}

set {

newValue

}

}

}


var cccc = ccc()

cccc.PI = 90


//******************总结*******************************//

//子类无论是重写父类的存储属性还是计算属性,都是拦截父类的set get方法进行操作。区别是当子类重写了父类的计算属性的时候是无法再set方法中将newValue存储到super的属性中的。类属性的重写和重写父类的计算属性一样,因为类属性只能是计算属性

// final的作用:被final修饰的属性、方法、下标脚本都不能被子类重写

(编辑:李大同)

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

    推荐文章
      热点阅读