#import <Foundation/Foundation.h> -------------------------------------------------.h @interface Dog : NSObject { NSInteger _age; NSInteger _height; } /* 点操做和setter和getter 1.setter - 返回值 是void 函数名 必须以set 开头 set后面的单词必须首字母大写 参数 只能有一个 假设 - setAge: 那么 咱们就能够直接这样使用 dog.age = 1; .后面 age 就是 set后面的单词(首字母变小写) 2.getter - 必需要有返回值类型 无参数的 例如 - (NSInteger)age ; NSInteger a = dog.age; 这里的.age就是getter .后面就是getter的方法名 */ - (void)setAge:(NSInteger)age; - (NSInteger)age; - (void)setHeight:(NSInteger)height; - (NSInteger)height; - (int)xxx; @end ---------------------------------.m #import "Dog.h" @implementation Dog - (void)setAge:(NSInteger)age { _age = age; } - (NSInteger)age { return _age; } - (void)setHeight:(NSInteger)height { _height = height; } - (NSInteger)height { return _height; } - (int)xxx { return 1000; } @end ------------------------------ #import <Foundation/Foundation.h> #import "Dog.h" int main(int argc, const char * argv[]) { @autoreleasepool { Dog *dog = [[Dog alloc] init]; //[dog setAge:1]; // 点操做 是和 setter和getter 是有关系的 dog.age = 1;//等价于[dog setAge:1]; NSInteger newAge = dog.age;//等价于 [dog age]; //获取值得 .age表示就是 getter方法 //赋值的时候 .age setter方法 // = 左侧就是 setter方法 右侧 getter方法 NSLog(@"newAge:%ld",newAge); //只要setter和getter方法 就可使用点 操做 //- (int)xxx; 也可使用点 这就是一个getter NSLog(@"%d",dog.xxx); } return 0; }