IOS中方法的调用格式主要是通过[对象 方法名],为了方便其他语言开发者,也支持对象.方法名方式。
其实点语法,IOS编译后也是转换成[]格式
点语法,一般用来访问setter和getter方法。访问其他方法会导致警告。
@interface IosGrammar : NSObject
{
NSString *_name;
NSInteger _age;
}
// setter和getter方法
- (void) setUserName: (NSString *) name;
- (NSString *) userName;
- (void) setAge: (NSInteger) age;
- (NSInteger) age;
- (id) init;
+ (void) testIos;
@end
@implementation IosGrammar
- (id) init {
self = [super init];
return self;
}
- (void) setUserName: (NSString *) name {
_name = name;
}
- (NSString *) userName {
return _name;
}
- (void) setAge: (NSInteger) age {
_age = age;
}
- (NSInteger) age {
return _age;
}
+ (void) testIos {
IosGrammar *ios = [[IosGrammar alloc] init];
ios._name = @"小明";//编译错误
ios.userName = @"小明";
}
@end