1. -(void)setName:(NSString *)name {
    2. self.name = name;
    3. }
    4. - (NSString *)name {
    5. return self.name;
    6. }

    上面代码有什么问题?
    self.name本身就是调用点语法(set),在get或者set方法中再次调用,会形成循环引用.点语法的本质是调用类的set和get方法,如果类中没有setter和getter方法就不能使用点语法.