Duvida teórica de OO em relação a classe NumberFormat

1 resposta
A

Olá a todos!

Seguinte galera, como todos sabem, a classe NumberFormat é abstrata e para obtermos uma instância dela usamos os métodos getXXXInstance() da mesma.

A dúvida é: Qual a diferença, ou qual a vantagem dessa classe ser abstrata e obter a instancia dela assim do que se a classe não fosse abstrata e para obtermos a instância dela usassemos contrutores normais juntamente com o operador new.

Grato a todos

1 Resposta

T

Procure pelo “design pattern” Factory. Isso é mais ou menos uma implementação desse design pattern.

Normalmente, nós teríamos uma classe “NumberFormatFactory” que tivesse um método “getInstance”, que retornaria uma classe concreta que implementasse (ou fosse derivada de) “NumberFormat”.

Só que o pessoal que bolou a API resolveu que “NumberFormat” fosse ao mesmo tempo uma “Factory” e a classe-base para os formatos numéricos (talvez para economizar uma classe :stuck_out_tongue: ). Mas isso deve ser porque nessa época o pessoal da própria Sun ainda não tivesse os conceitos de “design patterns” bem certinhos.

Criado 3 de agosto de 2008
Ultima resposta 3 de ago. de 2008
Respostas 1
Participantes 2