Hi Jeroen,

--- Jeroen Frijters <[EMAIL PROTECTED]> wrote:
> Hi,
> 
> Classpath's java.io.BufferedOutputStream has a
> finalize, but Java API
> docs say it shouldn't have it.

it's commented out, and should be removed from
classpath completely, in my opinion, just like the
close method. they are already implemented in
FilteredOutputStream (or should be, according to the
spec).

> java.util.zip.[De|In]flater both have an empty
> finalize method "for
> compatibility". Is this really necessary?

Yes, in order to have reflection on these methods
working. A pretty good reason in my opinion.

Beside, the finalize method in classpath's Deflater is
broken. It should call end() as the 1.4 spec demands,
instead of tweaking it for optimization purposes.

The optimization breaks code when you extend Deflater
for your own native implementation which relies on
finalize calling its end() to cleanup native
resources.

The analoguous case can be make for Inflater.

BTW, deprecating end() before it's deprecated in the
spec is a minor glitch that could be fixed in the same
swoop ;)

cheers,
dalibor topic

__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - forms, calculators, tips, more
http://taxes.yahoo.com/


_______________________________________________
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath

Reply via email to