OC中基本知识点2

1.对实例变量的封装应该注意事项
  1. set方法是对实例变量赋值的方法,不需要返回值,需要参数
  2. get方法是对实例变量取值的方法,但是通常不写get,直接写实例变量名作为方法名,需要返回值,不需要参数
  3. 自定义初始化方法:在一个对象刚开始创造的时候,就对他的一些实例变量赋值,通常以init开头,返回值通常写id
2.#include,#import,@class区别
  • import和include都是在导入头文件时要使用的,都可以在oc里面使用,只不过#import导入头文件的时候,编译器只会编译一次,不会造成重复引用的问题
  • include导入头文件的时候,编译器会多次编译 ,造成重复引用的问题

重复引用:
例如,A引用了C,B也引用了C,而D又引用了A和B,在这个时候C就会在D里面引用两次,如果#import就不会出现这个问题,#include就会。

  • @class是为了解决交叉引用,交叉引用就是A引用了B,而B也引用了A,而#import不能避免交叉引用,这个时候就要使用@class。@class只是声明有这个类,但是用不了这个类里面的东西,效率更高。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,092评论 19 139
  • 3、请说明一下objective-c中#import 、#include 及@class的区别?#import<>...
    AlanGe阅读 4,531评论 0 0
  • 1.项目经验 2.基础问题 3.指南认识 4.解决思路 ios开发三大块: 1.Oc基础 2.CocoaTouch...
    阳光的大男孩儿阅读 10,491评论 0 13
  • 307、setValue:forKey和setObject:forKey的区别是什么? 答:1, setObjec...
    AlanGe阅读 5,527评论 0 1
  • 写这篇文章,我好像积攒了20几年的勇气。 我出生于湖南洪江,每次别人问起 “你是哪里人" ,我都要费很大的劲才能描...
    晓半阅读 4,760评论 5 11

友情链接更多精彩内容