iOS 中的类方法

Objective-C中的方法有两种:类方法和对象方法(也叫作实例方法)。

对象方法和类方法区别

对象方法

- 对象方法是属于对象的
- 以减号-开头
- 只能让对象调用,没有对象,这个方法根本不可能被执行
- 对象方法能访问实例变量(成员变量)
- 对象方法中可以调用当前对象的对象方法
- 对象方法中可以调用其他对象的对象方法
- 对象方法中不可以调用类方法

类方法

- 类方法是属于类的
- 以加号+开头
- 只能用类名调用,对象不能调用
- 类方法中不能直接访问实例变量(成员变量)
- 类方法中不能直接调用对象方法,要想调用对象方法,必须创建或传入对象。

所以当不需要访问成员变量的时候,尽量用类方法。并且类方法执行效率更高。

另外。类方法存储在元类里。元类的结构里有存储类方法列表的数据结构。所以类方法和对象方法可以同名,并且也遵循OC的消息转发机制。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容