類的定義:
package com
import java.util.Date
class Customer {
// _ 表示使用默認值進行初始化 ;
//String -- null , Int -- 0 , Boolean -- false
//val變量不能使用_來初始化
var name:String = _
var sex:String = _
var registerDate = new Date
def sayHi(msg:String) = {
println(msg)
}
}
//main方法必須要放在一個Scala的object(單例對象)中才能執行
object Main{
def main(args: Array[String]): Unit = {
val customer = new Customer
customer.name = "guettp"
customer.sex = "man"
println(s"name:${customer.name}")
customer.sayHi("hello")
}
}
類的構造器:
主構造器:主構造器是指在類名的後面跟上一些列參數 ,例如 class Student(val name:String,val age:Int){}
輔助構造器:在類中使用this來定義 ,例如 def this(age:Int)
class Student(val name:String, val age:Int) {
val address:String="beijing"
// 定義一個參數的輔助構造器
def this(name:String) {
// 第一行必須調用主構造器、其他輔助構造器或者super父類的構造器
this(name, 20)
}
def this(age:Int) {
this("某某某", age)
}
}