对NSObject进行子类化,是否会导致问题?

时间:2010-03-24 22:06:59

标签: iphone objective-c iphone-sdk-3.0 nsobject

我有一个非常基本的数据类,它是NSObject的子类。我声明了一些字符串,确保它们具有属性(非原子,复制),并合成它们。我实现的唯一方法是dealloc(),它释放我的字符串。这可能会引起任何记忆问题吗?我还需要实施其他方法吗?

4 个答案:

答案 0 :(得分:9)

NSObject的子类化是我们一直在做的事情。只需按照内存管理规则,你就可以了。

答案 1 :(得分:4)

如果要设置任何内容,可以实现自定义初始化。

-(id)init {
    if (!(self = [super init]))
          return nil;

    // Set things up you might need setting up.
    return self;
}

但是,只有在你打电话给班上任何其他事情之前,你才想做好准备。

只要有一个dealloc方法应该没问题,否则。

答案 2 :(得分:2)

不会有任何问题。子类化NSObject完全被接受,99%的情况需要。

通过子类化NSObject,您的子类将接收Cocoa / Cocoa Touch中任何对象所需的所有必需行为。这包括使用retainrelease等参考计数内存管理系统。

答案 3 :(得分:1)

你做得很好。请务必在子类“[super dealloc]方法”的末尾调用-dealloc