scala 类

35 阅读1分钟

什么是类

image.png

object scala1 {
  class Student() {
    var name:String = "小花"
    var age:Int = 18

    def sayHello(): Unit = {
      println(s"我是 ${age}岁的 ${name}")
    }
  }

  def main(args: Array[String]): Unit = {
    val st1 = new Student()
    println(st1.name)

    st1.sayHello()

  //  val st2 = new Student()
  //  println(st2)
  }
}

image.png

object scala4 {
  // 可以在两个地方写属性
  // 1.构造器的参数列表
  // 2.构造器内部

  // 构造器的参数列表:
  // 1. val 表示不可以被修改的属性
  // 2. var 表示可以被修改的属性
  // 3.没有修饰符,不是对象的属性,无法访问
  class Triangle(val a:Double, var b:Double, c:Double) {
    val d: Int = 1
    var e: Int = 2
  }

  def main(args: Array[String]): Unit = {
    val t = new Triangle(1,2,3)
    t.b = 2
  }
}
object scala5 {
  class User(val phone:String, var pwd:String) {
    var email:String = ""
    var name:String = ""
    def this (email:String, name:String, pwd:String){
      this("",pwd)
      this.name = name
      this.email = email
    }
    def this (email:String, name:String,pwd:String,phone:String): Unit = {
      this(phone,pwd)
      this.name= name
      this.email = email
    }
    def say(): Unit = {
      println(s"我的信息如下:")
      println(s"姓名:${name}")
      println(s"手机号:${phone}")
      println(s"邮箱:${email}:")
      println(s"密码:${pwd}:")
    }
  }

  def main(args: Array[String]): Unit = {
    var u1 = new User("137827829","123456")
    u1.say()

    var u2 = new User("13782@qq","123456")
    u2.say()

    var u3 = new User("137827829","123456")
    u3.say()
  }