Scala 標準ライブラリの多くのクラスはapply()
、コンパニオン オブジェクトをファクトリとして使用します。これは、 のような呼び出しを連鎖させる場合に便利List(List(1))
です。一方、new
( new HashMap[Int, Int]()
) を使用して直接オブジェクトを作成することも可能です。
それが標準ライブラリです。さて、私自身のコードでは、コンパニオン ファクトリとオブジェクトの作成のどちらのアプローチを使用するのが良いnew
でしょうか?
コンパニオン オブジェクト ファクトリをいつ作成し、いつnew
キーワードを使用するかについて、規則はありますか?
一方を他方よりも使用する利点は何ですか?