码迷,mamicode.com
首页 > 其他好文 > 详细

[Objective-c 基础 - 2.1] 封装

时间:2015-05-13 21:27:54      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:

A.封装内部细节,根据需求暴露方法

技术分享
 1 #import <Foundation/Foundation.h>
 2 
 3 @interface Student : NSObject
 4 {
 5     int age;
 6 }
 7 
 8 - (void) setAge:(int) newAge;
 9 - (int) age;
10 
11 - (void) study;
12 
13 @end
14 
15 @implementation Student
16 
17 - (void) setAge:(int) newAge
18 {
19     if (newAge <= 0)
20     {
21         age = 1;
22     }
23     else
24     {
25         age = newAge;
26     }
27 }
28 
29 - (int) age
30 {
31     return age;
32 }
33 
34 - (void) study
35 {
36     NSLog(@"%d岁的学生在学习", age);
37 }
38 
39 @end
40 
41 
42 int main()
43 {
44     Student *stu = [Student new];
45     [stu setAge:21];
46     [stu study];
47    
48     NSLog(@"这个学生的年龄是%d", [stu age]);
49    
50     return 0;
51 }
技术分享
 
B.封装规范
使用下划线开头命名实例变量
技术分享
 1 @interface Student : NSObject
 2 {
 3     int _no;
 4     Sex _sex;
 5 }
 6 
 7 - (Sex) sex;
 8 - (void) setSex:(Sex) newSex;
 9 - (int) no;
10 - (void) setNo:(int) no;
11 
12 @end
技术分享

[Objective-c 基础 - 2.1] 封装

标签:

原文地址:http://www.cnblogs.com/wvqusrtg/p/4501487.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!