iOS的@try、@catch()

本文通过一个关于修改UITabBarItem属性的小例子介绍了Objective-C中@try@catch异常处理的使用方式,并探讨了其在实际开发中较少应用的原因。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

NSArray *tabBarItems=self.tabBar.items;

NSArray * title = @[@"首页",@"分类",@"购物车",@"消息"];

@try {

[tabBarItems enumerateObjectsUsingBlock:^(UITabBarItem * indexItem, NSUInteger idx, BOOL *stop) {

indexItem.title=[title objectAtIndex:idx];

indexItem.image=[UIImage imageNamed:[NSString stringWithFormat:@"menu_0%ld_normal",idx+1]];

NSLog(@"%ld",idx);

}];

}

@catch (NSException *exception) {

NSLog(@"%@",@"有异常");

}

@finally {

NSLog(@"%@",@"最后执行");

}

今天被同事问,所以学习了一下,为什么OC很少用@try @catch

在网上搜索到知乎上的答案,总结一下:

1、@try@catch解决异常的能力强吗?

2、@try@catch对资源消耗多吗?

3、Cocoa开发者习惯了?

结果是:

解决问题能力不强,并造成额外的开销,所以很少用?

问题留给自己,有时间在考证~

nice~

- 如果有什么疑问,可以在评论区一起讨论;

- 如果有什么不正确的地方,欢迎指导!

> 注:本文首发于iHTCboy's blog,如若转载,请注明来源。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值