It seems that the result of the following code is the same, so when should I use each?
public class Person {
public Person() {
this.family = new Fa
For class variables [static variable] you cannot use the first, since you want the initializtion to happen only once, and not with every time you invoke your constructor.
For instance variables, the second is just a syntatic sugar of the first.
Sometimes you might have to use the second - for argument constructor, which are themselves - passed to your constructor.