类的三大特性,封装、继承、多态,前两个比较简单,一般不会问到,多态则是考察最多的,一般出现在笔试中。
多态性是指同一操作作用于不同的类的实例上可执行不同的逻辑。
多态是指 执行不同的逻辑 ,很多资料上介绍这里时总是说
“同一操作作用于不同的类的实例上时,会获得不同的结果。”,当年看到时就很困惑,一个函数给不同参数的时候它的结果也是不同的,这不是理所当然的嘛,其他它根本不在乎结果是否相同,而是强调执行不同的逻辑,即走到不同的方法体内。
interface animal{ function can(); } class cat implements animal{ function can(){ echo "i can climb"; } } class dog implements animal{ function can(){ echo "i can swim"; } } function work($obj){ if($obj instanceof animal){ $obj->can(); }else{ echo 'no can'; } } work(new cat()); work(new dog());
运行work时会根据传入参数的不同,选择执行不同的can方法。
上边的父类是接口,对于接口与普通类同样适用。
如对本文有疑问, 点击进行留言回复!!
DM数据库:dm.ini参数(五)预先装载表、客户端缓存、REDO 日志、事务相关参数
php+mysql获取7天、30天的统计数据,没有数值的补充0 By勤勤学长
第一章 第六小节Duilib的WindowImplBase基类OnCreate函数中调用AttachDialog函数
网友评论