In einer Skala ist es möglich, dass eine Eigenschaft eine Klasse erweitert, die Parameter benötigt?

8

Ich weiß, dass ein Merkmal eine Klasse erweitern kann, die einen leeren Parameterkonstruktor hat:

%Vor%

aber ist es möglich, eine Klasse zu erweitern, deren Konstruktor einige Parameter hat?

%Vor%

Ist das möglich? Es scheint, dass es nicht möglich ist. aber warum?

Danke

    
user1819676 21.08.2015, 05:15
quelle

2 Antworten

3

Ja, es ist möglich, Sie können einfach keine Konstruktorargumente angeben:

%Vor%

Aber um es zu instanziieren, müssen Sie auch den Konstruktor aufrufen:

%Vor%     
Alexey Romanov 21.08.2015, 07:54
quelle
2

Das Arg ein val scheint zu funktionieren.

%Vor%

Dies funktioniert auch, wenn Sie die Klasse zu einem case class machen, das die Argumente automatisch in vals umwandelt.

BEARBEITEN

Wie @Aleksey darauf hingewiesen hat, kompiliert dies, aber es ist eine Eigenschaft, die nicht instanziiert werden kann. Nein, es scheint immer noch nicht möglich zu sein. Sie müssen Bar eine Klasse machen.

%Vor%     
jwvh 21.08.2015 05:48
quelle

Tags und Links