Scalaでクラスを定義するサンプルを紹介します。
Scala クラス定義のサンプル
def main(arts: Array[String]) : Unit = {
// クラスの初期化
val sampleClass1 = new SampleClass(1, "文字列")
// フィールドへのアクセス
println(sampleClass1.val1)
println(sampleClass1.val2)
// varで定義したフィールドは書き換え可能
sampleClass1.val2 = "書き換え後文字列"
// valは書き換え不可
//sampleClass1.val1 = 2 // =>コンパイルエラー
// メソッドの呼び出し
sampleClass1.printVals // => 1,書き換え後文字列
val sampleClass2 = sampleClass1 + new SampleClass(2, "文字列2")
sampleClass2.printVals // => 3,書き換え後文字列文字列2
}
// クラスの定義
class SampleClass(val val1: Int, var val2 : String) {
// メソッドの定義
def printVals: Unit = {
println(val1.toString + "," + val2)
}
def +(that: SampleClass): SampleClass = {
new SampleClass(val1 + that.val1, val2 + that.val2)
}
}