Emmanuel Bourg wrote: > Le 28/11/2013 08:45, Damjan Jovanovic a écrit : >> Why? I've heard initializing fields, even to their defaults, is a good >> practice and makes code clearer. > > This style is applied to several components, it's reported by the > ExplicitInitialization checkstyle rule: > > http://checkstyle.sourceforge.net/config_coding.html#ExplicitInitialization > > "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."
And it is a real pain when debugging code, if the debugger first jumps from the ctor into the initialization code just for the defaults that would have been set anyway. - Jörg --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org