Can this example serve as an example of the implementation of the FactoryMethod pattern, or is it erroneous in relation to this particular pattern?
public class RentCar { public static Car getRentCar(Object object) { Car car = null; if (object instanceof BmwCar) { car = new BmwCar(); } else if (object instanceof PejouCar) { car = new PejouCar(); } return car; } } Class:
public abstract class Car { public abstract int getMaxSpeed(); public abstract String getMark(); } Impl:
public class BmwCar extends Car { @Override public int getMaxSpeed() { return 120; } @Override public String getMark() { return "BMW"; } } public class PejouCar extends Car { @Override public int getMaxSpeed() { return 80; } @Override public String getMark() { return "Pejou"; } }