私はScalaを学んでいますので、この質問はほとんどの人にとっては基本的すぎるかもしれません。スカラ:「静的スロット」を継承する方法は?
Javaでは、静的なスロット(関数または変数)をクラスに含めることができます。次に、そのスロットを継承したクラスにも配置します。
私は静的スロットはありませんが、コンパニオンオブジェクトがあります。しかし、私はそれらのオブジェクトが継承されたクラスの一部ではないことを知っています。したがって、私が2つのクラスPerson
とStudent
を持っていて、Personが変数all:List
を持つコンパニオンオブジェクトを持っていますので、すべての人のリストを返すのでPerson.all
、私はStudent.all
でもできると思っていたが、そうではない。
javaと同じ動作をする方法はありますか?
ありがとうございます!
エラーは、リストの2つの別個のコピーがあることです。事実、すべてがリストではなく、参考文献です。どういたしまして。 –
私はこのコメントを書いたとき、私はScalaをかなり新しくしました。私はウォルター・チャンの特性が初期化されていない参照を宣言したことを認識しています。したがって、彼のコードはリストの2つのコピーではありません。私のコードでは、私はvalを初期化することを忘れてList [Person] = List()。その変更により、私のコードは正しいでしょうか? –