case class

case class

scala里的case class和普通class有几点不同:

  • 1、初始化的时候可以不用new,当然你也可以加上,普通类一定需要加new;
  • 2、toString的实现更漂亮;
  • 3、默认实现了equals 和hashCode;
  • 4、默认是可以序列化的,也就是实现了Serializable ;
  • 5、自动从scala.Product中继承一些函数;
  • 6、case class构造函数的参数是public级别的,我们可以直接访问;
  • 7、支持模式匹配;
    其实感觉case class最重要的特性应该就是支持模式匹配。这也是我们定义case class的唯一理由

版权声明:本文为qq_34132046原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。