一、封装
oop三大特性:封装(成员变量)、继承、多态
@interface 向外界提供展示及接口。
@implementation 把具体的构造封装起来。
封装,一种把实现细节隐藏起来的机制。
面向对象编程中,把数据和对数据操作的实现细节隐藏起来,对外公开接口。
目的:把对对象的设计者和使用者分开,保持接口的简单。
属性封装了实例变量
方法封装了具体实现代码,
类封装了属性和方法,
二、Set方法
作用:为外界提供设置成员变量值的方法,
命名规范:
(1)方法名必须以set开头
(2)Set后面跟上成员变量的名称,首字母大写
(3)返回值一定是void
(4)一定要接收一个参数,而且参数类型需要和成员变量的类型一致
(5)形参名不能喝成员变量名一样(苹果官方推荐成员变量名前加_以示区分)
Set方法的好处:
(1)不让数据暴露在外,保证了数据的安全性
(2)对设置的数据进行过滤
三、Get方法
Get方法的作用:为调用者返回对象内部的成员变量
成员变量名的命名以下划线开头,get方法名不需要带下划线,使用下划线开头有两个好处:
(1)与get方法的方法名区分开来;
(2)可以和一些其他的局部变量区分开来,下划线开头的变量,通常都是类的成员变量。
四、Self关键字
Self是一个指针,谁调用了当前方法,self就指向谁
【出现在对象方法中,就代表着当前对象,出现在类方法中,就代表着当前类】
Self的用途:
(1)可以利用self->成员变量名访问当前对象内部的成员变量(仅在对象方法中)
(2)[self 方法名];可以调用其他的对象方法或者是类方法