在过去的几个月中,我学习纯粹的操作系统已经走过了很长的路,现在我正在将设计模式应用到我的工作中!所以我不得不扩展我的php知识,并且我正在使用接口,扩展它们,然后实现这些接口的类。我的问题是有关从延伸另一个借此代码实例的接口构造类:面向对象的PHP与关键字接口,扩展,实现
interface Car
{
function doGeneralCarStuff();
vinNumber =;
}
interface CompactCar extends Car
{
static $numCompactCars;
function doCompactCarStuff();
}
class HondaCivic implements CompactCar
{
function doGeneralCarStuff()
{
//honk horn , blink blinkers, wipers on, yadda yadda
}
function doCompactCarStuff()
{
//foo and bar and foobar
}
}
class ToyotaCorolla implements CompactCar
{
function doGeneralCarStuff()
{
//honk horn , blink blinkers, wipers on, yadda yadda
}
function doCompactCarStuff()
{
//foo and bar and foobar
}
}
myCar = new HondaCivic();
myFriendCar = new ToyotaCorolla();
好了,现在可以说,我想知道的东西从我的本田延伸即CompactCar接口接口的约一。我想知道有多少小型车($ numCompactCars)已经创建。我是新来的深层(对我来说很深:p)OOP,所以如果我没有正确地做到这一点,请提供指导。非常感谢!
如此。但我正在尝试使用“更多”面向对象的方法来实现它。我想从层次结构中获取信息。不管怎么说,还是要谢谢你! – 2011-03-18 06:04:40
啊,尝试工厂设计模式。它是一个创建其他对象的类(即$ carFactory-> createCar('HondaCivic');)。在该功能中,您可以将汽车存储在类似上述的属性(类变量)中,并且有一种名为“countCompacts”的方法,该方法循环已经创建的汽车并返回总数。现在这是一个面向对象的方法。 – RDL 2011-03-18 06:12:19
谢谢!我几乎处于我书中的工厂设计模式。 – 2011-03-18 06:18:41