编写健壮性的程序注意事项

2018-06-09  本文已影响0人  陈_振
  1. 如果给一个id对象发送消息,如果消息接受者没有对应的方法,则在运行时就会崩溃。因此在发消息前进行判断:

错误示范:

CZPerson *person = [array firstObject];    // firstObject返回的是id类型
 [person cool];

正确示范:

id person = [array firstObject];    // firstObject返回的是id类型

if ([person isKindOfClass:[CZPerson class]]) {
    CZPerson *czperson = (CZPerson *)person;
    [czperson cool];
}
  1. 重写setter方法时,可以对set的值进行判断,如果不符合要求,不给变量赋值。
上一篇 下一篇

猜你喜欢

热点阅读