微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Scala样例类及底层实现伴生对象

package com.wyh.day01

/**
  * 样例类的使用
  * 1、使用case修饰类
  * 2、不需要写构造方法,getter,setter方法,toString方法
  * 3、直接通过对象名进行调用
  * 4、自动重写方法
  *
  */
object ScalaApply {
  def main(args: Array[String]): Unit = {

    val animal = Animal("小黄",2)

    println(animal)


    val dog = Dog.apply("大黄",2)
    println(dog)

  }

}

/**
  * 样例类
  */
case class Animal(name:String,age:Int)


/**
  * 解释样例类使用的时候为什么不需要new关键字
  *
  * 伴生对象
  */
class Dog(name:String,age:Int){
  var _name:String = name
  var _age:Int = age

  override def toString: String = _name+"\t"+_age
}

/**
  * 伴生对象
  */
object Dog{

  def apply(name:String,age:Int): Dog = {

    new Dog(name,age)
  }

}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐