package com.wyh.scala.classData object Demo4Class { def main(args: Array[String]): Unit = { val stu = new Student("张三", 23) println(stu) } } //(_name: String, _age: Int) 默认构造函数的参数列表 class Student(_name: String, _age: Int) { /** * scala默认构造函数 * {} 所有代码都会被执行 * */ println("默认构造函数") //定义成员变量 val name: String = _name val age: Int = _age // _ 占位符 没有意义 var gender: String = _ var clazz: String = _ /** * * 重载构造函数 * */ def this(_name: String, _age: Int, gender: String) { //在重载构造函数第一行需要先调用默认构造函数 this(_name, _age) println("重载构造函数") //给成员变量赋值 this.gender = gender } //多重构造函数 def this(_name: String, _age: Int, gender: String, clazz: String) { //在重载构造函数第一行需要先调用默认构造函数 this(_name, _age, gender) println("重载构造函数") //给成员变量赋值 this.clazz = clazz } /** * 重写Object的toString方法 * * 方法没有参数的时候() 可以省略 * **/ override def toString: String = { //当最后一行作为返回值的时候return 可以省略 //return name + "\t" + age name + "\t" + age + "\t" + gender } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。