objective-c - Objective-C 运行时调用的方法

标签 objective-c ios

今天我读了 apple documentation on dealloc .上面写着

"You never send a dealloc message directly. Instead, an object’s dealloc method is invoked by the runtime."

在我的理解中,这意味着我们永远不会向对象发送 dealloc 消息,只有运行时将 dealloc 发送给它自己。如果我错了,请纠正我。

另外,我想知道还有哪些方法像dealloc一样只能由运行时调用。

我读了runtime reference ,但很难理解它。比方说,为什么文档中没有列出 dealloc?

最佳答案

In my understanding, it means that we never send dealloc message to an object

正确。

only runtime sends dealloc to itself

当对象的保留计数变为零时,运行时将 dealloc 方法发送给对象。运行时不会向自身发送 dealloc(运行时不是对象,释放运行时没有意义!)。

关于objective-c - Objective-C 运行时调用的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11843826/

相关文章:

ios - 使用 Firebase 的 Google 注销按钮

iphone - 从 NSURL 字符串中获取一个特殊的子字符串

ios - 为什么 UIImagePickerControllerDelegate 方法没有触发?

objective-c - 双重赋值在 Objective-C 中有效吗?

ios - 我有一个 Storyboard,我插入这个。我想在启动 Controller 之前在 Storyboard上获取控件的名称。如何?

ios - 带圆角的 iso-chart 条形图

objective-c - 如何计算两个浮点值的浮点提醒

ios - 根据给定位置显示谷歌导航

ios - "id"类型如何在不强制转换的情况下理解方法的接收者?

objective-c - UIScrollView 内的 UIView 未获取触摸事件