- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《从零开始学iOS7开发系列3-我的地盘我做主-Cha12》.pdf
从零开始学iOS7开发系列3-我的地盘我做主-Cha12
原⽂及⽰例代码来⾃raywenderlich store中的iOS Apprentice 系列3教程,经过翻译和改编。
版权归原作者所有,本系列教程仅供学习参考使⽤,感兴趣的朋友建议购买原英⽂教程教程(The
iOS Apprentice Second Edition: Learn iPhone and iPad Programming via Tutorials!)。
购买链接:
/store
这可是你⾃找的!
好了,在法师⼥神吉安娜的招呼声中,我们开启了新⼀轮的战⽃,哦不,新⼀课的学习。
在前⼀部分(1-11课)的内容中,我们学习了如何使⽤Core Location获取⽤户所在的地理位置信
息,并进⾏反向地理编码。同时,我们还了解了防御型编程的概念,也就是从⽤户体验和产品健壮
度出发,把各种意外的情况处理都考虑在内。
总的来说,再次强调⼀点,这个教程的主要⺫的不是教你学iOS开发,⽽是带你进⼊iOS的世界溜⼀
圈,教你如何学习编程,了解程序猿的思维和⼯作⽅式,学会如何学习新的知识。
如果你是为了找个好⼯作来看该系列教程,建议不如报个绿翔技校或者⻄⼤神⻦神⻢的来得快。
之所以有这些废话,是因为接下来——⼜是让你惨不忍睹不忍继续看下去的—-理论知识了!!!
不管你看不看,我就继续了。⾄于不看的后果吗,嘿嘿,有⼥神吉安娜镇楼,⼩⼼我的魔法会把你
撕成碎⽚哦~
到⺫前为⽌,我们的教程中把⼏乎所有的代码⽣物都叫做对象(object)。其实这样的叫法是不严谨
的。神⻢?为⽑到现在才告诉我?不知道我都跟⼩伙伴们炫耀好久了吗嗷嗷嗷!⼥神说了,这是你
⾃找的,装B遭雷劈哦,它才不管你是否能渡劫成功。其实,为了更精确的贯彻⾯向对象编程的理
念,我们要把对象(object)和它所属的类(class)区分开来。
当我们使⽤类似下⾯的代码时,
@interface ChecklistItem : NSObject
…
@end
实际上我们是在定义⼀个名为ChecklistItem的class (类),⽽不是⼀个object (对象)。
⽽当我们使⽤类似如下的代码时才是创建⼀个对象。
ChecklistItem *item = [[ChecklistItem alloc] init];
现在item这个变量包含了ChecklistItem类的⼀个对象。只要你看到该死的*星号,就知道它是⼀个对
象了。你可以这样理解:item这个变量包含了ChecklistItem类的⼀个实例。在这⾥,对象和实例是
⼀回事。不过对象和实例变量可不是⼀回事哦。
换句话说,ChecklistItem类的对象其实是item这个变量的datatype (数据类型)。
Objective-C语⾔中提供了⼀⼤堆内置的数据类型,当然我们也可以通过创建⾃定义类的⽅式来添加
属于⾃⼰的数据类型。
为了更好说明类和实例/对象的区别,还是⽤个例⼦来说明吧。
咱两都是标准的吃货,还都是哈根达斯的爱好者(会不会有点伪娘的感觉啊?)。最近⼟豪⼤哥给
发了5元钱的微信红包,于是哥两商量好干脆去⼤吃⼀顿哈根达斯。哈根达斯(Haeagen-Dasz)就是我
们要吃的事物的类,为了简单起⻅,就⽤Dazs这个单词吧。
让我们创建⼀个哈根达斯类如下:
@interface Dazs : NSObject
@property (nonatomic, strong) NSString *flavor;
@property (nonatomic, assign) int scoops;
- (void)eatIt;
@end
咱两⼀起去了哈根达斯店,向⼩妹要了两个。
买完后,漂亮⼩妹递过来⼀个对你说,这是你的哈根达斯。你害羞的笑笑,指着旁边的我,不,弄
错了,这是他的哈根达斯。
//你的那个
Dazs *iceCreamForYou = [[Dazs alloc] init];
dazsForYou.flavor = @Strawberry;
dazsForYou.scoops = 2;
//我的那个
Dazs *iceCreamForMe
您可能关注的文档
- 《不锈钢y型截止阀》.doc
- 《不锈钢圆弧齿轮油泵》.pdf
- 《不锈钢氨气减压阀》.doc
- 《不锈钢氨用截止阀》.doc
- 《不锈钢污水污物潜水泵》.pdf
- 《不锈钢潜水式排污泵》.pdf
- 《不锈钢调节球阀》.pdf
- 《不锈钢防爆齿轮油泵》.pdf
- 《不锈钢齿轮油泵》.pdf
- 《与罗伯特艾伦对话 创造多种收入流的秘密》.pdf
- 《中国通史》文字稿第12集春秋争霸.docx
- java教程--类与对象-讲义课件(演讲稿).ppt
- Vue应用程序开发-(1).pptx
- 东北师大版社劳动实践与评价指导手册一年级上册主题二活动一寻找五彩的树叶课时课件.pptx
- 外研版英语四年级上册 Module 4 Unit 2 How much is it单元教学设计.docx
- 外研版英语四年级上册Module 4 单元整体教学设计.docx
- 6《上课之前》课件 鄂科技版 心理健康教育一年级.pptx
- 《1~5的认识》说课课件(共25张PPT)人教版一年级上册数学.pptx
- 六《解决问题(1)》说课课件 人教版 三年级上册数学.pptx
- 七《解决问题》说课课件 人教版 二年级上册数学.pptx
文档评论(0)