OC学习
面向过程:分析解决问题的步骤,实现函数,调用函数。
面向对象:分析问题所需的对象,各个对象的功能,再协作完成问题。
类的定义
具有相同行为特征的抽象集合称为类
@class
防止循环引入
定义类(DefineClass)
.h文件
@interface className : NSObject
{
entityVariables; //实体变量;
example:
NSString *_name; //定义一个名字的变量 oc字符串类型要加*号,变量名前一般加_
NSInteger _age;
}
//实体变量初始化方法定义
- (instancetype)initWithName:(NSString *)name;
//因为oc的实体变量是protectType,必须通过set、get,method获取值
setter(设置器)
- (void)setName:(NSString *)name; //设置实体变量的值
getter(访问器)
- (NSString)name; //获取变量的值,get(访问器)后面不用接get
- : 代表对象方法,只能对象名调用。
+: 代表类方法,只能类名调用。
//methodDeclaration
- (type)methodName;
@end
实现类(implementationClass)
.m文件
@implementation ClassName
methodImplementation(方法实现)
- (instancetype)initWithName:(NSString *)name
{
_name = name;
return self; //self返回自己的地址
}
- (void)setName:(NSString *)name
{
_name = name;
}
- (NSString *)name
{
return _name;
}
- (void)methodName
{
NSLog(@“……”); // NSLog相当于printf
}
@end
方法调用
main.m
//实例变量清零初始化并复制
ClassName *ObjectName = [[ClassName alloc]initName:parameter];
//通过设置器给实体变量赋值
[ObjectName setName:parameter];
//获取实体变量的值
[ObjectName entityVariablesName];
//调用类方法
[ObjectName methodName];