往往大家在学习OC的过程中觉得其实这两个概念很简单,其实不然,OC的重点难点离不开类和对象,所有的OC课程都是围绕类和对象展开的,所以,熟练地掌握类和对象是我们学习OC的基本。
那么,什么是类,什么是对象?
类,就是具有相同特征和行为的事物的抽象。那么特征是什么?特征就是特点,比如人的特点有姓名、性别、年龄......,汽车的特点有车名、颜色......,这些特点就可以理解为特征。行为是什么?行为就是这个人能干吗,这个汽车能干吗,人能吃饭、说话、睡觉,汽车能跑,能遮风挡雨。而具有相同的特征和行为的我们统称为类,人就是人类,车就是车类。
对象,就是类的具体实现。什么是对象?比如我们说过的人是一个类,人类。那么对象是什么呢?人类可以分为学生、老师、教官、老百姓.....那么学生是一个类还是对象?教官是一个类还是对象?他们统统都是类。如果一个班级的学生有小王、小明、小李....那么小王就是对象,小李也是....他们都是对象,是人类的具体实现。再比如,车类有宝马、奔驰、凯迪拉克、保时捷、劳斯莱斯.....那么其中的宝马是类还是对象?宝马当然是一个类,他们都是类,如果小王有一辆宝马车,那么这辆宝马车就是对象,是宝马,类的具体实现。
在OC语言中,类可以分为子类和父类,子类可以继承父类的方法(特征)。例如:Student继承与Person类,大学生继承与Student类,注意:OC中的继承是单一继承的,每个子类只能有一个父类。