scala
复制代码
object Base15 {
class Student(var name: String, var age: Int, var gender: String = "男", var nav: String = "汉族") {
def say(): Unit = {
println(s"${name}, ${age}, ${gender}, ${nav}")
}
}
def main (args: Array [String]): Unit
=
{
// var s0 = new Student() // gender 和 nav 使用默认值
var s1 =new Student("小明", 19) // gender 和 nav 使用默认值
s1.say()
var s2 =new Student("小花", 18, "女", "回族")
s2.say()
}
}
scala
复制代码
object Base17 {
// 多种注册用户的方式 ---- 辅助构造器
// 1. 手机号 + 密码
// 2. 邮箱 + 密码 + 用户名
// 姓名class Register (val name: String, var email: String, var pwd: String, var phone: String) {
println ("主构造器被调用")
def this (phone: String, pwd: String) {
this ("随机用户 xxxxx", "xxxx@qq.com", pwd, phone)
// 调用主构造器
println ("辅助构造器被调用")}
def this (email: String, pwd: String, name: String) {this (name, email, pwd, "13600000000")
// 调用主构造器
println ("辅助构造器被调用")}
def say (): Unit = {
println (s" 姓名: ${name},邮箱: ${email}, 密码: ${pwd}, 手机号: ${phone}")}
}
def main (args: Array [String]): Unit = {
//val r1 = new Register ("小明", "123123@qq.com", "123456", "13617885566")
// 调用辅助构造器
val r1 = new Register ("13617885566", "123456")
val r2 = new Register ("9456651@qq.com", "123456", "小明")
r1.say()
r2.say()
}
}