commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sean Owen <>
Subject Re: svn commit: r1546303 - in /commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging: common/ common/bytesource/ common/itu_t4/ common/mylzw/ formats/bmp/pixelparsers/ formats/jpeg/decoder/ formats/pcx/ formats/png/ formats/tiff/ formats/ti...
Date Thu, 28 Nov 2013 11:47:18 GMT
On Thu, Nov 28, 2013 at 12:42 PM, Emmanuel Bourg <> wrote:
> "Rationale: each instance variable gets initialized twice, to the same
> value. Java initializes each instance variable to its default value (0
> or null) before performing any initialization specified in the code. So
> in this case, x gets initialized to 0 twice, and bar gets initialized to
> null twice. So there is a minor inefficiency. This style of coding is a
> hold-over from C/C++ style coding, and it shows that the developer isn't
> really confident that Java really initializes instance variables to
> default values."

I think there are two better reasons.

First, if the variable were final, this redundant initialization
wouldn't compile. So I suppose it's a little good for consistency.

Second, it might generate confusion if the variable were initialized
and then reinitialized in two places. A glancing look that just saw
the first redundant initialization might miss the fact that it's
"really" initialized later in the constructor.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message