类型约束是针对类中的方法么,还是针对这个类

类型约束是针对类中的方法么,还是针对这个类

    类型约束以什么形式约束这个类,不就是方法中规定类的实例类型么,那么如何理解这句话

如果一个类或接口指定了类型约束,则其所有的子类或实现也都如此?


个人觉得类的约束类型,是针对方法调用过程传参的类型限制啊,跟这个类的约束有啥关系

这跟函数传参过程中规定参数类型是一样的,

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕查理 2018-07-03 19:02:04

您好,PHP5版本的类方法和函数中可实现类型约束,但参数只能指定类、数组、接口、callable 四种类型,参数可默认为NULL。

如果一个类或接口指定了类型约束,则其所有的子类或实现也都如此:如果一个类或者接口中有test()方法,假设为a类,而a类中test方法被指定了类型约束,那么b类继承了a类时,b类中test方法也是受此类型约束的。

如果解决了您的问题,请采纳,祝学习愉快!

  • 提问者 慕盖茨6742792 #1
    说白了,类或接口还是通过方法和函数来建立类的约束类型(不限于传参,有可能在方法体中建立约束),其子类或实现要继承这个约束,可以这么理解么
    2018-07-03 22:32:47
  • imooc_澈 回复 提问者 慕盖茨6742792 #2
    您好,是的。
    2018-07-04 09:59:37
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师