当前位置: 首页 > news >正文

大良网站智能推广如何2023来个网站可以看的

大良网站智能推广如何,2023来个网站可以看的,绵阳手机网站制作,各种软件链接网址在 Objective-C 中#xff0c;[self class] 和 [super class] 都用于获取对象的类信息#xff0c;但它们在运行时的行为略有不同。理解它们的区别有助于更好地掌握 Objective-C 的消息传递机制和继承关系。让我们详细解释这两个调用的区别。 [self class] 当你在一个对象方…在 Objective-C 中[self class] 和 [super class] 都用于获取对象的类信息但它们在运行时的行为略有不同。理解它们的区别有助于更好地掌握 Objective-C 的消息传递机制和继承关系。让我们详细解释这两个调用的区别。 [self class] 当你在一个对象方法中调用 [self class] 时实际上是向对象发送了一条 class 消息。这个消息的接收者是 self即当前对象。self 是指向当前实例的指针方法的调用是通过对象本身的 isa 指针找到对应的类方法。 示例代码 interface MyClass : NSObject - (void)printClass; endimplementation MyClass - (void)printClass {NSLog([self class]: %, [self class]); } end在这个示例中[self class] 直接调用了 self 对象的 class 方法。假设 self 是 MyClass 类的一个实例[self class] 将返回 MyClass。 [super class] 当你在一个对象方法中调用 [super class] 时super 不是一个指向当前对象的指针而是一个编译器指示告诉编译器从父类的实现开始查找方法而不是从当前类。这意味着尽管方法的接收者仍然是当前对象但方法的查找从父类开始。 示例代码 interface MyClass : NSObject - (void)printClass; endimplementation MyClass - (void)printClass {NSLog([super class]: %, [super class]); } end在这个示例中[super class] 会调用 NSObject 的 class 方法因为 MyClass 继承自 NSObject。然而由于 class 方法并未被重写所以最终效果与 [self class] 相同。 具体区别 方法查找起点 [self class]从当前类开始查找 class 方法。[super class]从父类开始查找 class 方法。 结果 在绝大多数情况下如果 class 方法没有被重写[self class] 和 [super class] 的结果是相同的都返回对象的实际类。如果在子类中重写了 class 方法[self class] 会调用重写的方法而 [super class] 则会调用父类的方法。 重写 class 方法的示例 interface MyClass : NSObject endimplementation MyClass - (Class)class {return [NSString class]; } endinterface SubClass : MyClass endimplementation SubClass - (void)printClass {NSLog([self class]: %, [self class]);NSLog([super class]: %, [super class]); } endint main(int argc, const char * argv[]) {autoreleasepool {SubClass *obj [[SubClass alloc] init];[obj printClass];}return 0; }在这个示例中MyClass 重写了 class 方法返回 NSString 类。SubClass 继承自 MyClass 并添加了 printClass 方法。运行这个程序会输出 [self class]: NSString [super class]: NSString由于 SubClass 继承了 MyClass 的 class 方法所以无论是 [self class] 还是 [super class]最终调用的都是 MyClass 中重写的 class 方法。 总结 [self class]发送 class 消息给当前对象方法查找从当前类开始。[super class]发送 class 消息给当前对象但方法查找从父类开始。 在大多数情况下如果 class 方法没有被重写它们的结果是相同的。但如果 class 方法被重写它们的行为会有所不同[self class] 会调用当前类的重写方法而 [super class] 会调用父类的方法。
http://www.pierceye.com/news/52862/

相关文章:

  • 腾讯云备案网站建设方案书南昌网站建设报价
  • 南京玄武网站建设wordpress 插件 免费下载
  • 网站备案是在哪个部门普通电脑可以做网站服务器吗
  • 没有营业执照怎么样做百度企业网站jquery 做网站
  • 做色流网站服务器高要区公路建设规划局网站
  • 广西南宁建设厅网站首页招聘网站有哪些平台
  • 烟台网站建设公司网站导航条
  • 高校思政教育工作网站建设wordpress邮件注册
  • 国外的网站建设公司网站如何提升用户体验
  • seo网站营销推广公司wordpress 777
  • 红色系 网站新浪博客搬家到wordpress
  • 宁波网站设计方案自己注册的公司怎么报税
  • 手机微网站系统苏州网站建设白石
  • logo设计网站生成器做网站和推广工资多少
  • 淄博周村网站建设哪家好做搜狐网站页面
  • app定制开发网站建设福建省建设质量安全协会网站
  • 电子商务网站建设市场分析家装网站自己做的
  • 外贸自建站平台怎么找网站跳出率多少算正常
  • 洛阳网站建设哪家公司好模板商城建站
  • wordpress导航背景如何给自己的网站做seo
  • 玄圭互联网站建设推广选择邯郸网站建设
  • 快速开发网站自己能够做投票网站吗
  • 央企做的好的网站绍兴哪些公司做网站
  • 河南专业网站建设哪家好网站怎么黑
  • 北京网站制作外包如何把做好的网站代码变成网页
  • 企业网站建设视频教程wordpress 一周热门
  • 做网站需要几个人有彩虹代刷源码怎么做网站
  • 江门网站设计素材网站搭建是什么专业
  • 嘉兴网站建设嘉兴南京的网站制作公司
  • 中国建设第一平台网站软件工程要学什么