1. ホーム
  2. scala

[解決済み] Scala の private と protected コンストラクタ

2022-09-20 03:55:16

質問

Scalaで明示的な一次コンストラクタを持たず、クラスボディの内容のみを持つことの影響について興味があります。

特に、private または protected コンストラクタのパターン、つまりコンパニオンオブジェクトまたは別のクラスまたはオブジェクトのメソッドを通して建設を制御することは、明白な実装を持たないかもしれないと私は思っています。

私は間違っているのでしょうか?もしそうなら、それはどのように行われるのでしょうか?

どのように解決するのですか?

以下のようにクラス名とパラメータリストの間に適切なキーワードを挿入することで、デフォルトコンストラクタをprivate/protectedとして宣言することができます。

class Foo private () { 
  /* class body goes here... */
}