Mögliche Duplizieren:
Best Practice: Initialize class fields in constructor or at declaration?Best Practice zum Initialisieren von Elementvariablen?
Ich arbeite mit C#, aber das trifft wahrscheinlich auch auf Java (oder einer anderen Sprache, die auch dieses Verhalten erlaubt) ...
Welchen Weg ist vorzuziehen/beste Praxis? Angenommen, ich werde immer _memberVar
1.
class MyClass
{
private Dictionary<int, string> _memberVar = new Dictionary<int, string>();
public MyClass() {}
}
brauchen - ODER -
2.
class MyClass
{
private Dictionary<int, string> _memberVar = null
public MyClass()
{
_memberVar = new Dictionary<int, string>();
}
}
können nun sagen, dass MyClass
ab 10 Konstrukteuren hat ... Also ich möchte nicht _memberVar = new Dictionary<int, string>();
in all diesen Konstruktoren lol haben. Ist etwas falsch mit dem 1. Weg? Dank
Edit: Ich weiß, ich kann die Konstrukteure Kette, aber das ist eine recht komplexe Klasse ... einige Konstrukteure nennen die Basis, einiger anderer Anruf Konstrukteuren bereits etc etc.
Duplikat von http://StackOverflow.com/Questions/2451A/best-Practice-Initialize-Class-Fields-in-Constructor-Or-At-Declaration – M4N
und Entschuldigung über die duple ... – Polaris878