0

如果 Apple 不希望开发人员在 iPhone SDK 中使用私有 API,那么他们为什么不使用与 C# 的“内部”关键字等效的 Objective-C 来标记类和/或方法呢?如果 API 分布在多个二进制文件中,Apple 可以将它们重构为专用的私有 API 二进制文件,以使它们更容易做到这一点。

4

2 回答 2

5

Objective-C 没有 C# 的“internal”或 Java 的“final”关键字的等价物。我认为这与语言的动态特性有关,任何这样的功能无论如何都太容易解决了。

同样关于 iPhone SDK,所有的库都需要静态编译到应用程序中,不允许动态链接。因此,即使可能,将功能设置为“内部”也不会影响可见性。

于 2010-04-19T01:08:13.470 回答
0

简短的回答,他们没有将它们标记为私有,因为他们根本没有描述它们。

您不应该发送的消息不会出现在 SDK 的相应 .h 文件中。

私有 API 通常是由人们使用类转储等工具针对二进制框架而不是通过读取标头找到的。

于 2010-04-19T03:19:26.487 回答