Abstract Factory

Estudando padrões, me deparei com uma dúvida na implementação do Abstract Factory. Pelo que entendi ele nada mais é do que ter uma classe abstrata como classe Pai e suas filhas implementando seus próprios métodos. Daí o Factory cria a classe solicidada e a Pai vai ter o comportamento da filha que a fábrica trouxe. Exemplo:

Carro carro = Fabrica.getCarro("Ferrari");

carro.correr();

Carro carro = Fabrica.getCarro("Fusca");

carro.correr();

Carro é minha classe abstrata e cada carro vai correr de acordo com o que a fábrica trouxer. Minha dúvida: E caso Ferrari tenha uma implementação diferente de fusca. Onde implemento ela. Se fizer na classe carro, a Fusca vai exigir sua implementação.

Espero ter sido claro.

O padrão Abstract Factory não abrange apenas um tipo geral e suas implementações, mas sim famílias desses tipos. Se tivermos simplesmente uma interface Carro e classes que implementam Carro, possivelmente estamos falando de um Factory Method simples.

Independente ou não se ser um Abstract Factory, esta não é minha dúvida. Este é um simples exemplo e minha dúvida é quanto ao método. Caso não queira ajudar, não precisa dar palpites. Obrigado.

OK, não precisa se enfezar. Afinal minha intenção foi ajudar mesmo. Se puder explicar melhor sua dúvida…