Einar,


Infelizmente eu tambem so' consigo imaginar a solucao que voce chamou de
pessima. Alias, se o atributo _bos pode
ser est�tico, talvez ele n�o precise ser atributo da classe e voc� pode
simplesmente o alocar:

super(new ByteArrayOutputStream());

isso nao serve para voce ?


Boa sorte,


[]'s


Fabio

Einar Saukas wrote:

> '
>         Oi pessoal!
>
>         Encontrei um problema interessante no projeto em que estou
> trabalhando, ser� que algu�m tem alguma sugest�o? Minha inten��o
> era fazer uma classe assim, s� que n�o funciona:
>
> class MessageOutputStream extends ObjectOutputStream {
>   private ByteArrayOutputStream _bos;
>   MessageOutputStream() throws java.io.IOException {
>     super(_bos = new ByteArrayOutputStream());  // ERRO!
>   }
> }
>
>         Todas as outras solu��es semelhantes que eu consegui imaginar
> tamb�m n�o funcionam, como essa por exemplo:
>
> class MessageOutputStream extends ObjectOutputStream {
>   private ByteArrayOutputStream _bos;
>   MessageOutputStream() throws java.io.IOException {
>     ByteArrayOutputStream tmp = new ByteArrayOutputStream();
>     super(tmp);  // ERRO!
>     _bos = tmp;
>   }
> }
>
>         Na verdade, existe uma �nica variante que funciona, mas �
> uma p�ssima solu��o:
>
> class MessageOutputStream extends ObjectOutputStream {
>   static ByteArrayOutputStream tmp;
>   private ByteArrayOutputStream _bos;
>   MessageOutputStream() throws java.io.IOException {
>     super(tmp = new ByteArrayOutputStream());
>     _bos = tmp;
>   }
> }
>
>         Por isso, a solu��o que eu acabei adotando foi deixar parte
> da inicializa��o para ser feita pelo "cliente" da classe:
>
> class MessageOutputStream extends ObjectOutputStream {
>   private ByteArrayOutputStream _bos;
>   MessageOutputStream(ByteArrayOutputStream bos)
>       throws java.io.IOException {
>     super(bos);
>     _bos = bos;
>   }
> }
>
>         Em todo caso, se algu�m tiver alguma id�ia de como implementar
> minha inten��o original, eu agrade�o. Eu acho que n�o tem muito jeito,
> mas n�o custa nada perguntar...
>
>         Um abra�o,
>
> Einar Saukas
> Technical Consultant
> Summa Technologies, Inc.
> http://www.summa-tech.com
>
>     --------------------------- LISTA SOUJAVA ---------------------------
>     http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP
>     [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
>     ---------------------------------------------------------------------

    --------------------------- LISTA SOUJAVA ---------------------------
    http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP
    [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
    ---------------------------------------------------------------------

Responder a