Scala Problem optionaler Konstruktor

7

Stellen Sie sich diesen einfachen Code vor:

%Vor%

Das Ergebnis ist

%Vor%

Ich wäre gerne

%Vor%

Wie erreiche ich das? Ich kann die Methode testMethod nach der Objekterstellung nicht aufrufen.

Mazi

    
Massimo Ugues 26.08.2011, 10:22
quelle

1 Antwort

19

Ihre Testmethode wird zuerst im Hauptkonstruktor aufgerufen. Es gibt keinen anderen Konstruktor, der verhindern könnte, dass er aufgerufen wird, bevor sein eigener Code ausgeführt wird.

In Ihrem Fall sollten Sie einfach umkehren, welcher Konstruktor was macht. Lassen Sie den Hauptkonstruktor den Parameter string und das Hilfskorrekturzeichen auf null setzen. Zusätzliche Verstärkung, Sie können die Var direkt in der Parameterliste deklarieren.

%Vor%

Im Allgemeinen sollte der Hauptkonstruktor der flexiblere sein, typischerweise wird jedes Feld einem Parameter zugewiesen. Scala-Syntax macht genau das sehr einfach. Sie können diesen Hauptkonstruktor bei Bedarf privat machen.

Bearbeiten : Noch einfacher mit dem Standardparameter

%Vor%     
Didier Dupont 26.08.2011, 10:31
quelle

Tags und Links