理解PHP类层次结构和转换

时间:2013-12-16 18:11:53

标签: php

我试图了解如何在PHP中使用类层次结构。在Java编程中,我可以做这样的事情:

public class ClassOne extends SuperClass{

}

public class ClassTwo extends SuperClass{

}

public class SuperClass{

}

现在,当我将对象实例化为unknownclass = new SuperClass();时,我就可以将此unknownclass强制转换为随时随地扩展的任何类。

我的问题是这如何适用于PHP?以及如何使用它?

1 个答案:

答案 0 :(得分:0)

多态性的主要好处是能够传递特定于通用需求的内容,前提是特定内容响应通用需求。因此,考虑到以下通用要求:

public function doSomethingWith(Superclass obj)

您可以将Superclass或其任何子类的实例传递给doSomethingWith。但为了使其有用且“安全”,Superclass的子类需要实现至少Superclass相同的公共成员。因此,如果Superclass有一个名为execute的方法,则ClassOneClassTwo需要使用相同的方法,方法是继承Superclass的实现,或者覆盖它并定义一个新的实现,只要重写的方法具有相同(或多态兼容)的签名。这为您提供了大量的行为灵活性,因为相同通用要求的不同实现可能会产生变化。