请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关联对象





老师:成员变量和属性,按下面的代码理解对吗?如果对的,您讲的添加“成员变量”其实也是不可在.h和.m文件中声明出来的。

.h:

@interface LWDCategory : NSObject {
UIButton * _button;// 成员变量,也是实例变量 

int _totalNum; // 成员变量,不是实例变量 

}
@property (nonatomic , strong) UIButton * button; // 属性变量 

@end

.m:

@interface LWDCategory (){
UIButton * _innerButton; // 私有成员变量,也是私有实例变量

 int _innerTotalNum;// 私有成员变量,不是私有实例变量 }

 
@property (nonatomic , strong) UIButton * innerButton;// 私有属性变量

@end



正在回答 回答被采纳积分+3

1回答

于海 2018-07-10 18:37:21

你下面写的是扩展不是分类

0 回复 有任何疑惑可以回复我~
  • 提问者 慕慕8700898 #1
    嗯呢,老师,我是想确定一下成员变量和属性的区别……
    回复 有任何疑惑可以回复我~ 2018-07-10 18:39:14
  • 于海 #2
    属性在类中相当于成员变量+setter+getter
    在分类以及协议中相当于setter+getter
    分类想实现带成员变量的效果需要做关键对象
    回复 有任何疑惑可以回复我~ 2018-07-10 20:14:56
  • 老师,我觉得这样解释可能更恰当些:
    属性:setter+getter
    编译器在编译的时候,如果没有成员变量,会自动帮我们生成带_的同名成员变量。
    分类是在运行时决议,编译器无法帮我们去生成了,所以需要通过关联对象去实现。
    回复 有任何疑惑可以回复我~ 2023-02-15 18:52:32
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号