黑马程序员技术交流社区

标题: 分享今天的学习笔记,对于正在学习oc的同学,拿走不谢 [打印本页]

作者: 德玛西亚小学生    时间: 2016-2-18 08:48
标题: 分享今天的学习笔记,对于正在学习oc的同学,拿走不谢
1.方法名由什么组成?有没有方法的重载?
除掉参数类型和参数名称和返回值类型的所有内容。
没有重载。
2.方法与函数有什么区别?
(1).方法以-或者+开头,数据类型要用()括起来。函数不需要。
(2).方法的声明必须写在@interface和@end之间,实现必须写在@implementation 和@end之间  函数可以写在任意位置(@interface和@end之间除外)
(3).方法必须由对象或者类来调用,而函数不需要。
(4).方法归类或者对象所有,函数归文件所有。
3.用什么表示对象?什么叫匿名对象?
类的具体事例。  类是具有相似内部状态和运动规律的实体的抽象。
匿名对象:指没有变量名的对象。
4.一个类的属性又叫什么?
实例变量和成员变量。
5.一个类的属性可以是什么类型?
任意类型。
6. 一个类的属性默认值是多少?
0或者null.
7.Person *per=[Person new];per是一个指针还是一个对象?占几个字节(64位)?
per是一个对象。8个字节。
8.方法有哪两种?有什么区别?各有什么应用场景?
方法分为类的方法和对象的方法。类的方法以+开头,对象的方法以-开头。类的方法使用便捷,但是不能访问类的属性。对象的方法可以直接访问对象的属性。
9.类方法能直接访问属性吗?如果一定要访问一个对象的属性,要怎么操作?
不能直接访问,如果一定要访问,必须把这个属性对应的对象传进方法中去。或者在类方法中直接创建一个新对象,然后用这个对象去访问。
10.封装在OC中主要指的是对什么的封装?有什么好处?
是指对类的属性的封装。好处:将变化隔离,便于使用,提高重用性,提高安全性。
11.属性封装的原则是什么?
(1).将不需要对外提供的内容都隐藏起来。
(2).把属性都隐藏,提供公共方法对其访问。
12.匿名对象与有名字的对象最大区别是什么?
匿名对象具有一次性。使用一次之后再次使用,将重新初始化对象的属性值。
13.对象创建后,属性与方法是在一起吗?如果不在各在哪里?
不是,属性存在于内存的堆区,方法存在于内存的代码区。
14.对象的指针操作对象的时候用的是什么机制?访问方法的过程是什么?
消息机制。访问方法过程:对象指针指向内存堆区的isa指针,isa指针指向内存代码区的对象的方法,最后访问方法。
15.isa指针指向的是什么?一个对象有几个isa指针?同一个类的多个对象isa指针一样吗?
isa指向的是内存代码区的方法。一个对象由1个isa指针。不一样。
16.类的设计要遵循哪两个原则?
高内聚。低耦合。


作者: lichuanlong    时间: 2016-2-18 22:09
  客气  客气  
作者: 佛聆    时间: 2016-2-18 22:09
6666666666666666666总感觉
作者: 水丹青    时间: 2016-2-18 22:15
66666666666666666666666
作者: 382502038    时间: 2016-2-18 22:49
666666666666666
作者: 大爱五花肉    时间: 2016-2-19 08:07
学习学习,顶一个
作者: 奔跑的蚂蚁iOS    时间: 2016-2-19 08:46
挺好的,很不错。
作者: 梦想家z    时间: 2016-2-19 09:00
77777777777
作者: chensc    时间: 2016-2-19 20:21
学习学习!
作者: 谢天成    时间: 2016-2-23 16:52
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2