問題タブ [companion-object]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1826 参照

scala - Scala で、コンパニオン オブジェクトからケース クラスのプライベート コンストラクターにアクセスするにはどうすればよいですか

次のコードを定義しました (Scala IDE/Scala Worksheet with Scala 2.10):

そして、次の出力を正常に受け取りました。

a : public_domain.WorkSheet1.A = A(ああ、ハイ)

ただし、既存のものをコメントアウトしcase class A (s: String)、もう一方 (「private」を含む) のコメントアウトを解除すると、次のコンパイラエラーが表示されます:「オブジェクト WorkSheet1 でクラス A のコンストラクター A にアクセスできません」。

コンパニオン オブジェクトがそのコンパニオン クラスのすべてのプライベート パーツにアクセスできることは、私の理解でした。へー。ええと...真剣に。何を与える?

0 投票する
2 に答える
2198 参照

scala - スマートコンストラクターのScalaケースクラスの実装?

ケースクラスを使用してスマートコンストラクターを実装しようとしています。copyメソッドをうまくオーバーライドすることapplyができたので、コンパニオン オブジェクトの でうまくいったはずですが、 を渡そうとしたときに壁にぶつかりましたBigInt。入れてみましdef apply(value: BigInt): Option[Natural]たが、scalacシンボルの競合について不平を言います。

そんなことはありえないのではないでしょうか?

0 投票する
2 に答える
7134 参照

scala - コンパニオン オブジェクトのフィールドにアクセスできません

クラスがコンパニオン オブジェクトのフィールドにアクセスできないのはなぜですか?

のプライベート フィールドにアクセスできる必要がありますobject MyClass

0 投票する
1 に答える
204 参照

xml - Scala – コンパニオン オブジェクト & 適用: 理解できないエラー

コンパニオン オブジェクトを使用して、XML 解析ドキュメントを表すクラスを作成できません。

クラスのコードは次のとおりです。

このクラスを使用するアプリのコードは次のとおりです。

エラーは次のとおりです。

私は単にこのエラーを理解していません (そして、これを削除する方法)。

ありがとう!

0 投票する
2 に答える
294 参照

scala - scala: プライベート ユーティリティ メソッドはコンパニオン オブジェクトに存在する必要がありますか?

質問は自明ですが、例を挙げさせてください:

私は次のものを持っています:

このコンテキストでは、質問は次のとおりです。に住む必要がありますか?def message(result: Result)object Foo

賛成の議論は、def message(result: Result)内のどの状態にも依存しないことを明示することclass Fooです。反対意見は、コンパニオン オブジェクトの動機は、Java public static メソッドを配置する場所を提供することだったというものです。