gpt4 book ai didi

objective-c - 在Objective C中子类化时需要实现的方法

转载 作者:行者123 更新时间:2023-12-01 19:18:13 26 4
gpt4 key购买 nike

我一般是编程新手(尽管我在很多年前上过 C 课)并且正在学习 Objective-C 以在 iPhone 上进行编程。我有一个我认为是一个简单的问题,但是在寻找了一段时间(几天,断断续续)之后,我找不到我正在寻找的答案。

我知道当子类化一个Objective-C类时,我应该实现initialize方法和deallocate方法(除非后者使用ARC,如果我是正确的?)。问题是:

  • 是否只有这两个需要担心,或者其他类是否可能具有需要实现的其他方法?
  • 如果其他类在子类化时可能具有我需要实现的方法,那么通常在哪里可以找到该文档? (我似乎没有在 Apple 框架文档中看到这一点,尽管它出现的协议(protocol)中有这种信息)

  • 谢谢你的帮助!

    最佳答案

  • 从技术上讲,您甚至不需要实现 initdealloc如果继承的版本足够。此外,ARC 并没有让您免于编写 dealloc在所有情况下(但它肯定涵盖了绝大多数)。例如,如果您使用 malloc 为对象分配内存。 ,您需要在 dealloc 中释放它.
  • 当您将实例变量添加到您的类时,您需要初始化它们。通常,您在指定的初始化程序中执行此操作。同样,如果您不初始化任何内容,则不必编写自己的初始化程序;反初始化器也是如此。
  • 唯一需要实现方法的情况是采用带有一个或多个方法标记为 @requried 的协议(protocol)时。 .这些方法在协议(protocol)引用中都有标记。例如,tableView:cellForRowAtIndexPath:tableView:numberOfRowsInSection:Apple's documentation 中标有“必需方法”标签.
  • 关于objective-c - 在Objective C中子类化时需要实现的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11620646/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com