99
В оригинале:
–
разные классы реализуют интерфейс автомобиль;
–
непосредственно создавать объекты автомобилей;
–
нужно изменить клиента, чтобы сменить авто.
С использованием паттерна:
–
используйте класс carFactory class, чтобы создавать объекты- машины;
–
можно менять автомобиль, посредством изменения carFactory.
Пример
class 350Z implements Car;
// fast car
class Ram implements Car;
// truck
class Accord implements Car; // family car
Car fast = new 350Z();
// returns fast car
public class carFactory {
public static Car create(String type) {
if (type.equals("fast"))
return new 350Z();
if (type.equals("truck"))
return new Ram();
else if (type.equals(“family”)
return new
Accord();
}
}
Car fast = carFactory.create("fast"); // returns fast
car
Достарыңызбен бөлісу: