7
A
答えて
19
テストメソッドは、メインのコンストラクタで最初に呼び出されます。独自のコードが実行される前に別のコンストラクタが呼び出されないようにする方法はありません。
あなたの場合、どのコンストラクタが何をするかを単純に逆にする必要があります。メインのコンストラクタに文字列パラメータを設定し、補助コンストラクタでnullに設定します。ゲインを追加すると、パラメータリストに直接varを宣言できます。
class Constructor(var s: String) {
def this() = this(null)
def testMethod() = println(s)
testMethod()
}
一般に、メインコンストラクタは、より柔軟なものである必要があります。通常は、各フィールドをパラメータから割り当てます。 Scala構文は非常に簡単にそれをやってくれます。必要に応じて、メインのコンストラクタをプライベートにすることができます。
編集:デフォルトのパラメータを持つ、まだ単純
class Constructor(var s: String = null) {
def testMethod = println(s)
testMethod
}
関連する問題
- 1. Fuse.jsコンストラクタの問題
- 2. C++コンストラクタの問題
- 3. JSONArrayコンストラクタの問題
- 4. Springコンストラクタの問題
- 5. スパークScalaの問題
- 6. 問題ScalaのCTORのオーバーロード
- 7. NG-オプションの問題
- 8. Java継承コンストラクタの問題
- 9. scala-tools.orgの問題と
- 10. Scalaの型消去問題
- 11. Scala Breeze zip値の問題
- 12. Scalaのコンストラクタ抽象
- 13. コンストラクタはスリックScalaの
- 14. JStreeの "initially_open"オプションの問題
- 15. swift3オプションの値の問題
- 16. Scalaのオプション
- 17. 問題 - のelifがオプション・メニュー
- 18. JavaScriptオプションの選択問題
- 19. jQueryオートコンプリート:matchSubsetオプションの問題
- 20. IntelliJ Scalaの問題を参照するときの問題
- 21. Scalaのジェネリック型のパラメータの問題
- 22. NullPointerExceptionがScalaのクラスのコンストラクタ
- 23. コンストラクタに関する問題
- 24. コンストラクタ引数とスプリングデータのデシリアライゼーションの問題
- 25. Activator.CreateInstance - パラメータのないコンストラクタの問題
- 26. Kotlinプライマリとセカンダリのコンストラクタの問題
- 27. Scala Parser Token Delimiter問題
- 28. Scala、Akka:特性問題のオブジェクトのパターンマッチング
- 29. 問題ScalaのSparkデータセットの集約
- 30. SquerylとPlayの問題! scalaのフレームワーク