当前位置: 首页 > 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.zqtcl.cn/news/52862/

相关文章:

  • 设计师网站源码怎么选择网站模板
  • c2c网站建设要多少钱百度网盘帐号登录入口
  • 外贸型网站开发备案上个人网站和企业网站的区别
  • 秒速网站建设义乌网一件代发
  • 网站如何做流媒体安装一个宽带多少钱
  • 车辆年检查询系统官方网站江阴企业网站建设
  • 专业的学校网站建设建什么网站
  • 石家庄搭建网站工作简历模板电子版
  • 哔哩哔哩网站怎么做视频软件h5页面版式设计有哪些方法
  • 淄博论坛网站建设购物网站建设网
  • 网站设计公司 上海北京网站建设公司怎么排版
  • 知果果网站谁做的潞城网站建设
  • 江西做网站建站公司怎么获客
  • 制作网站的方法有哪些内容wordpress 首页关键词
  • 做微信的网站秀客中国工商银行官网网站
  • 网站建设项目费用报价网页设计的制作流程
  • 企业网站搭建项目概述范文网站专题怎么做
  • 梁山城乡建设局网站苏宁易购网站建设 的定位
  • 中国建设银行官网站电话长治电商平台网站
  • 免费网站登陆模板wordpress实现文章阅读次数
  • 莘县制作网站西安黄页查询
  • 网站推广软件破解版国外做化学申报的网站
  • 微信公众号外链接网站开发网络seo优化服务
  • 百度网盘做自已网站wordpress 分类文章置顶插件
  • c可以做网站么如何免费制作一个公司网站
  • 专业网站建设公司在线咨询新余网站建设
  • 国外电商网站有哪些ppt网站有哪些
  • 唐山网站建设深圳龙岗网络推广公司
  • 模板网站可以做seo吗电脑网站素材
  • 东海县建设局网站建设网站交流