Objective-C:iOS基础——个人笔记(七)

点语法、成员变量的作用域、@property、id、重写- init方法、分类

// , = : 左右留空格

注释:#pragma mark - 内容

%p: 输出地址

点语法

Person *p.age;

成员变量的作用域

@public 任何类

@private 当前类

@protected (默认)父类和子类

@package 同一框架

@property int age;// 自动生成成员变量的setter和getter声明和实现

@synthesize age = _age; // 自动生成实现,成员变量不存在会自动生成

id  相当于Object *  万能指针

重写- init方法

- (id)init //  初始化父类成员变量

{

self = [super init];

if(self != nil)

_age = 10;

return self;

}

构造方法:初始化对象的方法 init

父类属性交给父类处理  子类的交给子类处理

Category  分类、类别、类目

分类:可以给某一个类扩充一些方法(不修改原来的代码)

// 声明

@interface 类名(分类名称)

@end

// 实现

@implementation 类名(分类名称)

@end

使用注意

(1)分类只能增加方法,不能增加成员变量

(2)分类方法实现中可以访问原来类中声明的成员变量

(3)分类可以重新实现原来类中的方法,但是会覆盖原来的方法

(4)优先级:分类(最后编译)——>原来类——>父类

发布了63 篇原创文章 · 获赞 67 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/sange77/article/details/45733181