您的位置:首页 > 编程语言 > PHP开发

php面向对象--多态

2015-11-15 13:04 507 查看
先解释一下多态:php面向对象的多态就是指通过一个抽象类或者接口定义出子类所实现的方法,之后在一个函数或者类的方法中传入之前定义的每个子类实例化后的对象名,通过调用新的类中同一个的方法(由于参数不同)实现不同对象不同的执行逻辑.(自己的理解,非官方).
下面在一个例子:

<?php
//定义父类接口

interface Person{
function getName();
function getAge();
}

//第一个子类

class Phper implements Person{
public function getName()
{
echo 'this is php\'getName';
}
public function getAge()
{
echo 'this is php\'getAge';
}
}
//第二个子类

class Javaer implements Person{
public function getName()
{
echo 'this is jave\'getName';
}
public function getAge()
{
echo 'this is java\'getAge';
}
}

//一个全新的类

class my{
function isMy($obj)//这里的参数是个对象名称
{
$obj->getName();
echo "<br>";
$obj->getAge();
}
}
//分别实例化之前的几个类

$php = new Phper;
$java = new Javaer;
$my = new My;

$my->isMy($java);//通过传入不同的对象的名称,执行不同的业务逻辑
?>

如果你要问我这个东西有什么用呢,那我只能说可能在对代码的规范,以及理解上有一些帮助.其他的我也不清楚.因为实际工作的过程中我也没有碰到过应用多态的场景.

希望博友有新的见解或者比较好的案例可以在评论中给出解释或者链接.

本文出自 “吴泽辉的php博客” 博客,请务必保留此出处http://phpwzh.blog.51cto.com/6651035/1712873
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: