@interface ViewController : UIViewController
{
//成员变量
NSArray *arrayFirst;
}
// 属性变量
@property (nonatomic, strong) NSArray *arraySecond;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
arrayFirst = [[NSArray alloc] initWithObjects:@"ab", nil];
_arraySecond = [[NSArray alloc] initWithObjects:@"123", nil];
{
// 局部变量
NSArray *arrayFirst = [[NSArray alloc] initWithObjects:@"12345", nil];
NSLog(@"localVariable:arrayFirst:%@",arrayFirst);
}
NSLog(@"\narrayFirst : %@\n arraySecond : %@",arrayFirst,_arraySecond);
}
@end
//打印结果
localVariable:arrayFirst:( 12345 )
arrayFirst : ( ab )
arraySecond : ( 123 )
局部变量:是根据其生存周期定义的,在源文件中的arrayFirst,其生命周期是在以“{ }”为界限的代码块中,虽然它的名称与成员变量相同,但不是同一个变量。
成员变量:是用于一个区域内的临时变量。成员变量,本例中的是实例成员变量,是作用于整个类对象内的。
从生命周期来看,它比局部变量要长一些,但它默认是私有的,其他对象是无法访问到的。因此,一般自定义方法,作为一个接口让其他对象访问这个变量。因此,成员变量用于类内部,无需与外界接触的变量
属性是便于外界访问