A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© skywan 中级黑马   /  2015-7-24 15:33  /  5924 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 skywan 于 2015-7-24 15:35 编辑

在一个类中可以定义多个同名的方法,但要求每个方法具有不同参数的类型或参数的个数。
这是在c++,java中有的,在OC中是没有。
在OC中的重载应该是值参数个数不同,但是返回类型后面的名字相同;或者是参数个数相同,但是其标签不同。
例如:-(void) test: (int) num;
-(void) test: (float) num1;//错误,与第一个方法重名test:
-(void) test: (int) a andY: (int) y;
-(void) test: (int) a andY: (float) y;错误,与第一个方法重名test:andY:
-(void) test: (int) a : (float) y;//正确,名字不同

2 个回复

倒序浏览
嗯...感觉挺厉害的~~~~:lol
回复 使用道具 举报
oc当中无重载
你所谓的参数个数不同,其实方法名根本就是不同的,oc里面的方法名包括“:”及前面的参数说明符
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马