摘要:
类别是个很伟大的概念。使用类别可以为任何一个类添加新方法,包括那些你没有源代码的方法。这非常方便。想要为某个类添加新方法时,我们通常的做法是创建子类。但有时,子类不方便。你可能不能创建一个子类的对象。你可能使用的是框架和工具包,因此无法处理新类的对象。类别的声明:@interface UIImage (ImageTransform)-(UIimage *)transformToSize:(NSSize *)size@end现有的类位于@interface关键字之后,其后是位于圆括号中的一个新名称。类的名称可是任意,这个名称大概没有什么实际作用吧,仅仅是一个标示符。当然具有实际意义的标示符可以指 阅读全文
摘要:
@property预编译指令的作用是自动声明属性的setter和getter方法有时候需要声明相应的实例变量什么时候需要声明实例变量呢?看下面一个例子:@interface Foo: NSObject@property t;@@implmentation Foo- (NSInteger)t{ ...}- (void)setT:(NSInteger)newT{ ...}@end相应的setter, getter方法怎么实现呢? 这里没有用@systhesize自动合成如果是这样的实现- (void)setT:(NSInteger)newT{ self.t = newT;}那么这个函... 阅读全文