1.抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。
这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。
工厂模式是我们最常用的实例化对象模式,是用工厂方法代替new操作的一种模式。
使用工厂模式的好处是,如果你想要更改所实例化的类名等,则只需更改该工厂方法内容即可,不需逐一寻找代码中具体实例化的地方(new处)修改了。
为系统结构提供灵活的动态扩展机制,减少了耦合。
抽象多个工厂;
<?php
/*
interface是完全抽象的,只能声明方法,而且只能声明 public 的方法,不能声明 private 及 protected 的方法
不能定义方法体,也不能声明实例变量 。 interface 却可以声明常量变量 。
*/
interface Car
{
const BIG=100; //
public function getWidth(); //获取车宽度 不允许用private和protected修饰
public function getHeight();//获取车高度
}
interface Colors
{
public function setColor($c);
publ