dúvida sobre essa tecnica

3 respostas
T

Qual a diferença quando eu faço isso

NumberFormat formato = NumberFormat.getCurrencyInstance();

formato.format(variavel);

NumberFormat.getCurrencyInstance().format(variavel);

eu nao entendi isso direito na orientação a objetos…

Tipo o que acontece quando eu falo NumberFormat formato = NumberFormat.getCurrencyInstance;

me expliquem se tiver jeito!

3 Respostas

T

Não tem nada a ver com orientação a objetos. Isso é só aplicação de funções.

NumberFormat formato = NumberFormat.getCurrencyInstance();

formato.format(variavel);

é a mesma coisa que

NumberFormat.getCurrencyInstance().format(variavel);
T

O NumberFormat utiliza o desing-pattern de Singleton, seria
interessante que você lê-se sobre para entender melhor.

:arrow: No primeiro exemplo você pede a ele uma instância e armazena
ela na váriavel de referência formato.
:arrow: Ja no segundo você solicita uma instância do mesmo mas NÃO
armazena sua referência em uma variavel, executa um método (format) diretamente no objeto retornado, neste caso uma instância de NumberFormat o método format.

Acho que sua dúvida é devido ao encadeamento de métodos,
procuro alguma literatura sobre :slight_smile:

T

tgpadua:
O NumberFormat utiliza o desing-pattern de Singleton, seria
interessante que você lê-se sobre para entender melhor.

:arrow: No primeiro exemplo você pede a ele uma instância e armazena
ela na váriavel de referência formato.
:arrow: Ja no segundo você solicita uma instância do mesmo mas NÃO
armazena sua referência em uma variavel, executa um método (format) diretamente no objeto retornado, neste caso uma instância de NumberFormat o método format.

Acho que sua dúvida é devido ao encadeamento de métodos,
procuro alguma literatura sobre :)

nossa acho que agora deu para entender mais ou menos! vou ver sobre o Singleton que é realmente uma materia que estou estudando agora em java na faculdade…

Mas então o metodo getCurrencyInstance da classe NumberFormat me retorna um objeto ??? Ele me retorna um objeto que posso interpretar como uma subclasse da classe NumberFormat ??

Pois o objeto retornado me da outros metodos e nisso que eu não entendi direito saco? pq se eu pego NumberFormat. eu não tenho acesso ao metodo format…

Ai que entrei em parafuso!

Criado 10 de maio de 2007
Ultima resposta 10 de mai. de 2007
Respostas 3
Participantes 3