关于set方法,还是不太能理解

关于set方法,还是不太能理解

 -(void)setAge:(int)newAge{

age = newAge;

}


1. newAge 是接收main.m里的15这个值么,然后newAge得到15后赋值给age?

2. setAge取名是自定义的吗,例如取名setMyAge?

3.这样取名也对?   

-(void)setAge:(int)Age;{

age = Age;

}


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

登陆购买课程后可参与讨论,去登陆

2回答
Tender10 2018-03-15 16:35:29

1、第一点你的理解是对的,newAge就是接收值,然后赋值给age

2、setAge方法一般默认是set后面加属性名,比如age,那么就是setAge,如果是name,那么就是setName。

3、如果你起得是其他名字也是可以的,只要声明和实现都是同一个方法即可。

  • 提问者 Madao54 #1
    p1.age = 15; set方法为什么能准确获取它的值,从表面看set方法与它好像没有同一个关键字
    2018-03-15 17:07:54
  • Tender10 回复 提问者 Madao54 #2
    在setAge方法中你不是将设置的值,赋值给了age属性了嘛。所以赋值过后它就会进行存储,你获取的时候只要是获取这个属性的值就会获取到了。
    2018-03-15 17:58:19
提问者 Madao54 2018-03-15 16:27:16

第3问的代码重改为

-(void)setAge:(int)age;{

age = age;

}

这样也能么,好像调试是成功的


  • 可以,但是不建议,把参数名和你定义的属性名一样,避免混淆。
    2018-03-15 16:36:29
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
iOS入门:基础语法与常用控件
  • 参与学习       1337    人
  • 提交作业       712    份
  • 解答问题       1878    个

很多人都在疑问没有基础该怎么学习iOS开发?不用担心,本路径采用游戏关卡式的教学模式,并且以经典OC与最新Swift双重结合的教学内容,帮助大家快速掌握两种iOS开发语言基础,去掉“零”标签。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师