On Thu, Nov 28, 2013 at 12:42 PM, Emmanuel Bourg <ebo...@apache.org> 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: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org