arquivos  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
EddiE
Virtual Machine Man

Membro desde: 31/08/2002 09:05:07
Mensagens: 647
Localização: São Paulo - SP
Offline

quando tenho várias dependências como um PrintWriter dependendo de um OutputStreamWriter que depende de um FileOutputStream devo chamar flush() um por um na ordem inversa da criação (o mesmo com close) ou só com o último já está bom como nos exemplos da Sun?
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

Se você encapsula (wrap) uma Stream dentro de outra Stream (ou um Writer ou seja lá o que for), é suficiente chamar o flush ou o close da mais interna. Se você tiver a curiosidade de olhar os fontes vai ver que pelo menos para as Streams e Writers escritos pela Sun, o método close (ou flush) chama o método close (ou flush) das outras Streams (ou Writers). Não é preciso guardar uma referência para cada objeto.

Por exemplo, isto é suficiente (estou dando o exemplo com input streams e readers, mas com output é a mesma coisa):

[WWW]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team