1 楼回答正解, 我推荐使用ReactiveCocoa, 这个框架对KVO进行了封装, 会自己removeObserver, 并且观察属性的时候还有提示,会减少很多代码,可以简单的当作KVO 封装框架使用
这种就是谁是观察者,就在谁的dealloc中注销。父类KVO观察的属性,如果子类同样观察,则只在父类的dealloc中注销即可。