用scala语言定义一个类 Person ,参数列表包含 name 、 age 、 sex 三个参数,同时想让该类可以接收第四个参数 studentID 实例化,也想要接收第五个和第六个参数high``weight 进行实例化,实例化以后,打印欢迎信息
时间: 2024-10-24 19:14:37 浏览: 13
Scala可变参数列表,命名参数和参数缺省详解
在Scala中,你可以定义一个名为`Person`的类,并提供默认构造函数以及接受不同参数的情况。下面是一个例子:
```scala
class Person(
var name: String,
var age: Int,
var sex: String,
var studentID: Option[String] = None, // 默认为None,如果需要学生ID就传Some("student_id")
var highWeight: Boolean = false) { // 默认不是高体重
def welcomeMessage(): Unit = {
if (studentID.isDefined) {
println(s"欢迎 ${name},您的学号是${studentID.get},年龄${age}岁,性别${sex},并且(${if (highWeight) "是" else "否"})有高体重。")
} else {
println(s"欢迎 ${name},年龄${age}岁,性别${sex}。 (${if (highWeight) "是" else "否"})有高体重。")
}
}
// 如果你想在创建实例时设置默认值,例如当highWeight为true时,默认打印是有高体重
override def toString = welcomeMessage()
}
```
这个`Person`类允许用户选择是否提供`studentID`和`highWeight`,如果没有提供,它们会保持默认值。`welcomeMessage()`函数用于打印欢迎信息。
阅读全文