实例化对象
People *p1 = [[People alloc] init];
alloc - 为对象内存分配空间
init - 进行初始化操作
属性就是为了让类外可以访问成员变量
属性就是成员变量的外部接口
没有定义属性的话只能用getset来进行取赋值
类内调用成员变量而不是属性,属性是给外部使用的
调用方法使用[]
加号方法和减号方法可以互相调用当然需要类名和实例化变量,加号方法不能调用成员变量
-(返回值类型)
- (int)showWhitA:(int) a;
返回值 方法名 参数类型 参数名
函数名(方法名) 去点函数(方法)类型、去点参数名剩下的就是函数方法名
//showWithA: andB:
- (int)showWithA:(int)a andB:(int)b;
类的声明:
所以的类都在堆区,所以必须用指针
访问属性三种
1、protect受保护的(没有注明访问熟悉时默认的访问属性是prodect)。
2、public公共的(只有public能够自由访问,无法通过对象->来直接访问的)
3、private私有的
void没有返回值 所以在方法的实现时不用return
类的声明所注意的事项:
1、实例变量不能和方法混在一起,实例变量必须放在花括号内。
2、实例变量有访问限制。
3、方法的访问权限都是pubuic,没有其他权限。
4、方法不能在类的声明中实现。
5、大多自定义的类都继承自NSObject。
类的实现:
类的实现的注意:
1、实例方法可以直接引用类的实例变量和其他实例方法。
2、类的方法都是public的,但是如果一个方法只出现在类的实现里,没有出现在类的声明里,那么这个方法可以认为是私有的方法。
+开头的叫类方法 通过类名调用
-开头的叫实例方法 通过指针调用