package com.aura.scala.day01

object caseClasses {
def main(args: Array[String]): Unit = {
// 注意在实例化案例类时,并没有使用关键字new, 这是因为案例类有一个默认的apply
// 方法来负责对象的创建。
val frankenstein = Book("978-0486282114")
println(frankenstein.isbn)
val message1 = Message("panzidong", "lianghong", "come on")
println(message1.body,message1.recipient,message1.sender)
// 案例类的比较是按值而非按引用比较 val message2 = Message("panzidong", "lianghong", "come on")
val message3 = Message("panzidong", "lianghong", "come on")
println(message2 == message3)
// 案例类的拷贝 val message4 = Message("panzidong", "lianghong", "come on")
val message5 = message4.copy(sender = message4.recipient, recipient = "")
println(message5.sender, message5.recipient, message5.body) }
case class Book(isbn: String)
case class Message(sender: String, recipient: String,body: String)
}

resule:

"D:\Program Files\Java\jdk1.8.0_201\bin\java.exe" "-javaagent:D:\Program Files\JetBrains\IntelliJ IDEA 2019.1.3\lib\idea_rt.jar=5581:D:\Program Files\JetBrains\IntelliJ IDEA 2019.1.3\bin" -Dfile.encoding=UTF- -classpath "D:\Program Files\Java\jdk1.8.0_201\jre\lib\charsets.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\deploy.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\access-bridge-64.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\cldrdata.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\dnsns.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\jaccess.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\jfxrt.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\localedata.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\nashorn.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\sunec.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\sunjce_provider.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\sunmscapi.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\sunpkcs11.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\ext\zipfs.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\javaws.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\jce.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\jfr.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\jfxswt.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\jsse.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\management-agent.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\plugin.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\resources.jar;D:\Program Files\Java\jdk1.8.0_201\jre\lib\rt.jar;C:\Users\admin\IdeaProjects\ScalaDay\out\production\ScalaDay;C:\Program Files (x86)\scala\lib\scala-actors-2.11.0.jar;C:\Program Files (x86)\scala\lib\scala-actors-migration_2.11-1.1.0.jar;C:\Program Files (x86)\scala\lib\scala-library.jar;C:\Program Files (x86)\scala\lib\scala-parser-combinators_2.11-1.0.4.jar;C:\Program Files (x86)\scala\lib\scala-reflect.jar;C:\Program Files (x86)\scala\lib\scala-swing_2.11-1.0.2.jar;C:\Program Files (x86)\scala\lib\scala-xml_2.11-1.0.4.jar" com.aura.scala.day01.caseClasses
-
(come on,lianghong,panzidong)
true
(lianghong,,come on) Process finished with exit code

最新文章

  1. 使用css3新属性clip-path制作小图标
  2. 中文字体font-family常用列表
  3. C#中的Lambda表达式的演化过程
  4. python 学习笔记十五 web框架
  5. 关于favicon.ico,shortcut icon,icon
  6. linux文件系统节点详解
  7. 观看github前100开源项目的读后感
  8. C++统计一段文字中各单词出现的频率
  9. xml操作
  10. Android 如何使用juv-rtmp-client.jar向Red5服务器发布实时视频数据
  11. jdk1.5多线程Lock接口及Condition接口
  12. Qt 学习之路:QStringListModel
  13. MAC上python环境搭建
  14. Ubuntu 下一个disk清理保护
  15. 启动Mysql报错:Another MySQL daemon already running with the same unix socket.
  16. Webbench源代码分析(转载)
  17. springboot(三):Spring boot中Redis的使用
  18. Confluence 6 安装 PostgreSQL
  19. 查看和修改 mysql库、表、字段编码
  20. System.ServiceModel.CommunicationException: 接收HTTP 响应时错误发生

热门文章

  1. Spring Boot集成Spring Data Jpa完整实例
  2. CF858F Wizard's Tour
  3. php反转输出字符串(两种方法)
  4. apply,call和bind的使用及区别
  5. SaltStack实现动态文件分发,支持脚本换行,中文乱码
  6. 在论坛中出现的比较难的sql问题:15(生成动态删除列语句 分组内多行转为多列)
  7. mybatis获取刚刚插入到数据库的数据的id(转载)
  8. JTAG各类接口针脚定义、含义以及SWD接线方式
  9. 数据结构之链表(LinkedList)(二)
  10. 2019年6月车型数据Access数据库+缩略图 更新于2019年6月5日.