var name  = "myd" {         /*这里是在赋值之前会调用,在这里面会有一个新属性newValue,这个newValue就等价与之前oc里面的-(void)setX:(CGFloat)x;里面最后面的那个小x这样你就可以处理新值了,并把他直接赋值给当前属性*/
willSet{
name = newValue
}                                   //这里就是在赋完值以后,马上就回进入,并不是当你需要取值的时候才会进到这里,但是这里面的name已经是改变以后的值了,所以当你对这里面的name进行一系列的操作时其实就和oc里面的重写get方法是一样的,只不过是直接改变属性本身的值,但效果都是一样的
 didSet{
name = name + "hhhh"
} }