See Java Language Specification section 4.12.5: http://docs.oracle.com/javase/specs/jls/se7/html/jls-4.html#jls-4.12.5
"Each class variable, instance variable, or array component is initialized with a default value when it is created.
"A local variable must be explicitly given a value before it is used, by either initialization or assignment, in a way that can be verified using the rules for definite assignment."