五十四、基础框架(十二)创建 地址簿-2

我们  已经讨论过  如何  正确地  编写  setName:  和  setEmail:这两项措施,并且  也应该理解了  其中的重要原理。我们  回到  上一篇博文中的程序,让  系统  自动  生成  setName:  和  setEmail:这两项措施。下面  是  修改过后的AddressCard.h文件:

其中的

这行语句  将  AddressCard这类物件的两项属性name  和  email  标记出来。同时  这行语句  又  列举出  name  和  email这两项属性的两个特性,它们  分别  是  copy  和  nonatomic。

其中  copy这个特性  表明  在setName:  和  setEmail:这两项措施当中  将  name  和  email两个个体变量  做个  备份,就像  在上一篇博文里面那样。默认的特性  是  不做备份,而  简单的  将  参数中的物件的地址  存储  在name  和  email这两个变量中,这  在上一篇博文中  也示范过。

而   nonatomic这个特性  表明  name  或  email这两项措施  在将  变量name  和  email的值  读取出来之前,不应该保持  或者  自动释放  变量name  和  email。这一点  在今后  会  更加详细地  讲述。

接着  在AddressCard.m这个文件当中  需要用  @synthesize这个命令  来生成  setName;,name  和  setEmail:,email两对措施。下面  是  经过修改了地AddressCard.m文件:

大家  可以  自己  去验证一下,自动生成的setName:,name  和  setEmail:,email这两对措施  是否能  正常  工作。

接下来  我们  要为  AddressCard这类物件  编写  一项新的措施。大家  很可能  希望  同时  设定  某个AddressCard类型物件的姓名  和  邮箱地址。于是  新编写的措施  就是  这样:

在setName:andEmail:这项措施中  我们  依靠  系统自动生成的setName:  和  setEmail:这两项措施  正确地  设定了  实施对象所包含的name  和  email两个个体变量。

下面的程序  测试了  setName:andEmail:这项新的措施  是否能  正常  工作:

运行后的结果  是  这样的:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值