willSet不符合情况任然设置了呀

qq_osq0ake9 Swift 面向对象基础(中) 最后由 jike_6155415 于2017年08月25日回复

  • 2 回答
  • 1.2k 浏览

var p = Person() p.age = 999 print(p.age),打印结果是999,已经被设置了呀,什么情况?

  • 周文家 2017年08月08日 回答 #1楼
  • 你这么写当然是设置了 p.age调用了age的set方法对age进行操作,后面你又赋值了999,所以一定是被设置了。

  • 0 评论
  • jike_6155415 2017年08月25日 回答 #2楼
  • 老师讲错了,willSet里面不能起到阻止属性修改的作用,不管传入参数是多少,属性照样是会被修改的

  • 0 评论