Äquivalent von öffentlichen statischen Endfeldern in Scala

7

Ich lerne Scala, und ich kann mir nicht vorstellen, wie ich diese einfache Java-Klasse in Scala am besten ausdrücken kann:

%Vor%

Das Beste, was ich habe, ist folgendes:

%Vor%

Aber ich verliere die Vorteile von BLACK, WHITE und GREEN, die an den Color-Namespace gebunden sind.

    
JT. 29.03.2010, 03:58
quelle

3 Antworten

17
%Vor%     
missingfaktor 29.03.2010 04:20
quelle
13

Sie könnten einfach die spezifischen Farben in das Begleitobjekt einfügen:

%Vor%

BEARBEITEN :

Alternativ könnten Sie Werte innerhalb des Companion-Objekts haben:

%Vor%

Sie könnten sie faul machen, die Instanziierung zu verzögern, bis sie verwendet werden:

%Vor%

Wenn Sie die ursprüngliche Lösung zurückverfolgen, können Sie die Erweiterung der Klasse verhindern (indem Sie "final" simulieren, indem Sie die Farbe versiegeln:

) %Vor%     
Mitch Blevins 29.03.2010 04:13
quelle
1

sealed erlaubt Objekterweiterungen mit derselben physischen Datei..nicht in einer anderen Datei. versiegelt liegt näher am Paketumfang als das Finale.

    
Raja Nagendra Kumar 17.08.2011 04:34
quelle

Tags und Links