什么是私有API

The*_*ner 14 objective-c ipad

Apple引用私有API时的含义是什么?

Ala*_*lan 19

未公开的API,或API,他们没有明确地向开发人员公开.

虽然您可以访问它们,但是没有保证这些API在将来的iOS修订版中不会改变,而且这是让您的应用程序被拒绝的可靠方法.

  • 通过"可以访问它们",您的意思是"Apple将拒绝您的应用程序使用它们". (4认同)

dre*_*lax 5

私有方法是用作实现细节而不是[公共]接口详细信息的方法.在公共和私有方法更具可执行性的其他语言中,私有方法通常不能从包含它们的类以外的任何其他方法调用.其目的是隐藏实现细节,或防止外部依赖实现细节.例如,NSArray可能有许多私有方法处理内存分配和优化存储以实现高效访问.

Objective-C没有真正的私有方法; 您可以随意向任何对象发送您想要的任何消息,它可以响应它,也可以不响应.在运行时,您还可以通过一系列Objective-C Runtime API调用[公开记录]来确切地检查类(及其实例)将响应哪些消息.

有些人试图使用私有方法来获取公共文档界面无法实现的程序行为; 也许作为一种优化,也许是为了做一些API从未打算做的事情.由于Objective-C的动态性和缺乏真正的私有方法,很容易实现.

作为旁注; Apple通常在方法名称中使用前导下划线来表示它是私有的.Apple还声明以下划线开头的方法名称仅供Apple使用.