第一步,创建一个类文件,命名Students
创建一个类文件
这个类文件继承自NSObject
NSObject类创建的类会生成两个文件 .h 文件和 .m文件
两个文件.h文件用来说明类的特征和属性
.m文件用来实现类的功能的实现
OC中的类两部分组成
1.结口文件 interface【译】界面
接口部分的实现
Students.h2.具体实现文件 implementation 【译】执行
Student.m实现部分
Student.m-到此,以上操作都是类的操作,现在可以根据上面做好的类来创建对象。(对象是类的具体化过程)
-由类生成对象的过程就是类的实例化过程
-一个实例就是一个对象,一个类可以生成多个对象
实例化主要在main函数中实现
实例化有三部分
①.创建对象(需要做三件事)
-1.对象声明
-2.内存分配
-3.初始化
②.给对象的实例变量赋值
③.调用方法
输出结果
输出
类方法和实例方法
减号开头为 实例方法
需要实例化对象后通过对象进行调用。实例方法可以调用实例方法和实例变量。
\
加号开头为 类方法
不需要实例化对象,直接通过类调用。
上面程序中的Student类有两个实例方法。
在Student类中的接口文件.h中添加一个类方法。
然后在Student类的实现文件.m写类的实现方法
Students.m最后在mian.m文件中实现类方法的调用
mian.m输出结果为
输出在使用类方法时注意:
-类方法可以调用类方法
-类方法不可以调用实例方法
-类方法不能使用实例变量
在Student类的实现文件.m中进行以上几个的测试
-类方法可以调用类方法
Students.m-类方法不可以调用实例方法
Students.m-类方法不能使用实例变量
Student.m文件和Student.h文件还有一点,在main函数的输出中,可以使用类名调用类方法,但是不能用对象调用类方法。
mian.m以上的报错的原因是
类方法可以对类方法里面进行调用,但是不能对对象方法里面进行调用。
(类方法作为消息,可以发送到类里面,但是不能发送到对象里面)
网友评论