/*
* 成员变量的作用域
* 四种作用域:
private/public/protected/package
private: 只有当前类可以使用;
public : 所有均可访问;
protected : 当前类及其子类;
package : 当前框架下可用(范围介于private和public之间)。
.m文件中也可以定义成员变量,但是其作用域为private,即使设置为public也是没有效果的。
注意点:
子类是会继承父类的所有成员变量和方法,只是由于作用域的不同,有得成员变量是无法使用。
但是无法使用,跟继承父类成员变量是没有任何关系的。
*/
/**
* 点语法: 这是编译器属性;
person.age = 10; //相当于[person setAge:10]
person.age; //相当于[person age]
在oc语法中,使用点语法,实际上使用的是对象方法
**/
/**
@property int age;
//编译器会将这段代码,编译成一下代码:
- (void)setAge:(int)age:
- (int)age;
@synthesize age = _age;
//编译器会将一下语法执行为:
- (void)setAge:(int)age{
_age = age;
}
- (int)age {
return _age;
}
注意点:
1.这种情况下默认属性都是private,如果想设置为其他作用域,则必须要再.h文件中声明
2.@synthesize可以不写,新的Xcode可以用@property直接声明方法以及方法的实现
3.@synthesize age; //默认实现的是age的成员变量
*/