public class DuckFactory implements AbstractDuckFactory {
    @Override
    public Quackable createMallardDuck() {
        return new MallardDuck();
    }

    @Override
    public Quackable createRedheadDuck() {
        return new RedheadDuck();
    }

    @Override
    public Quackable createDuckCall() {
        return new DuckCall();
    }

    @Override
    public Quackable createRubberDuck() {
        return new RubberDuck();
    }
}

  1. public class DuckFactory implements AbstractDuckFactory {
  2. @Override public Quackable createMallardDuck() { return new MallardDuck(); }
  3. @Override public Quackable createRedheadDuck() { return new RedheadDuck(); }
  4. @Override public Quackable createDuckCall() { return new DuckCall(); }
  5. @Override public Quackable createRubberDuck() { return new RubberDuck(); }
  6. }