iOS多态和重载

刚刚看笔记觉得这两个概念有点模糊,然后仔细查了一下发现网上有很多误导性的解释,我现在加上自己的理解说一下。

1.多态

同一操作下作用于不同的类的实例时,将产生不同的执行效果。(Objective—C编程全解)

多态常常伴随着继承,比如动物类中有一个方法是叫,而他的子类:猫、狗,都有独特的方式,猫是喵喵,狗是汪汪,我声明一个对象调用动物的叫声的方法,指针指向哪个类就调用哪个类的方法,简单写了一个例子(子类中不需要再次声明):

在main中调用并显示执行结果

 

2.重载

指的是一个函数、运算符或方法定义有多种功能,并根据情况选择合适的功能。在许多语言中都适用,但是OC是动态语言,参数的类型是在运行时确定的,所以不支持这样根据参数类型不同来调用不同函数的重载(但是个数不同可以),OC可以通过动态绑定让同一个消息选择器执行不同的功能来实现重载。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值