Standardkonstruktor vs. Inline-Feldinitialisierung

Was ist der Unterschied zwischen einem Standard-Konstruktor und nur die Initialisierung eines Objekts Felder direkt?

Welche Gründe gibt es zu bevorzugen, die eines der folgenden Beispiele, über die anderen?

Beispiel 1

public class Foo
{
    private int x = 5;
    private String[] y = new String[10];
}

Beispiel 2

public class Foo
{
    private int x;
    private String[] y;

    public Foo()
    {
        x = 5;
        y = new String[10];
    }
}

InformationsquelleAutor der Frage Barry Brown | 2011-02-06

Schreibe einen Kommentar