weixin_30537155 2015-08-11 15:31 采纳率: 0%
浏览 2284

OC中有方法重载吗?具体是怎么样?

oc中有方法重载吗?那位大神具体描述下?看了好多都没有描述清楚!还是不知道到底有没有重载

  • 写回答

6条回答 默认 最新

  • NBCSDQ 2015-08-31 04:59
    关注

    Objective-C不支持方法重载。

    下列两个方法:

    • (void)doSth:(NSInteger)integer;
    • (void)doSth:(NSString *)str; 对Objective-C而言是一样的,都叫方法doSth: 同时定义实现这两个方法是无法编译通过的。 若要达到类似重载的效果,可以这样跟不同参数:
    • (void)doSth withInt:(NSInteger)integer;
    • (void)doSth withStr:(NSString *)str

    顺便提一下,我也在网上搜索过,含有关键字重载的,其实是子类继承父类后把父类的方法重写了。
    重载overload,是同一类中方法名相同参数签名不同的方法,重写override的是以相同的函数签名覆盖父类相同的方法。

    评论

报告相同问题?

悬赏问题

  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多
  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败