SCALA详细总结(精辟版+的+).pdf

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SCALA详细总结(精辟版的)

Scala 总结 --2015-1-19 12:33:54 本文档针对scala 2.10.x,由于scala 目前发展迅速,因此可能会和其他版本的不同。 ===概述 scala 是一门以java 虚拟机 (JVM)为目标运行环境并将面向对象和函数式编程的最佳 特性结合在一起的静态类型编程语言。 scala 是纯粹的面向对象的语言。java 虽然是面向对象的语言,但是它不是纯粹的,因 为java 的基本数据类型不是类,并且在java 中还有静态成员变量和静态方法。相反,scala 是纯粹面向对象的,每个值都是对象,每个操作都是方法调用。 scala 也是一个成熟的函数式语言。函数式编程有两个指导思想:①函数是头等值,也 就是说函数也是值,并且和其他类型 (如整数、字符串等)处于同一地位,函数可以被当作 参数传递,也可以被当作返回值返回,还可以在函数中定义函数等等;②程序的操作应该把 输入值映射为输出值而不是就地修改,也就是说函数调用不应产生副作用,虽然函数式编程 语言鼓励使用 “无副作用”的方法,但是scala 并不强制你必须这么做。scala 允许你使用指 令式的编程风格,但是随着你对scala 的深入了解,你可能会更倾向于一种更为函数式的编 程风格。向函数式编程转变,你就应该尽量去使用val、不可变对象、无副作用方法,而不 是var、可变对象、有副作用方法。要明白的是,从指令式编程向函数式编程的转变会很困 难,因此你要做好充分的准备,并不断的努力。 scala 运行于JVM 之上,并且它可以访问任何的java 类库并且与java 框架进行互操作, scala 也大量重用了java 类型和类库。 第一个scala 程序: object ScalaTest { def main(args:Array[String]) { println(hello scala.) } } ===scala 解释器 安装好scala 并配置好PATH 环境变量之后,就可以在终端中输入“scala”命令打开scala 解释器。在其中,你可以像使用shell 一样,使用TAB 补全、Ctrl+r 搜索、上下方向键切换历 史命令等等。退出scala 解释器,可以使用命令:“:q”或者 “:quit”。 由于解释器是输入一句执行一句,因此也常称为REPL。REPL 一次只能看到一行代码, 因此如果你要在其中粘贴代码段的话,可能会出现问题,这时你可以使用粘贴模式,键入如 下语句: :paste 然后把代码粘贴进去,再按下Ctrl+d,这样REPL 就会把代码段当作一个整体来分析。 ===scala 作为脚本运行 scala 代码也可以作为脚本运行,只要你设置好代码文件的shell 前导词 (preamble),并 将代码文件设置为可执行。如下: #!/usr/bin/env scala println(这是scala 脚本) 设置代码文件为可执行,即可执行之啦。 scala 脚本的命令行参数保存在名为args 的数组中,你可以使用args 获取命令行输入的 程序参数。 ===scala 编译运行 scala 编译器scalac 会将scala 代码编译为jvm 可以运行的字节码,然后就可以在jvm 上 执行了。假设有一个Hello.scala 文件,我们就可以使用 scalac Hello.scala 编译,然后使用 scala Hello 运行。当然也可以使用java工具来运行,但需要在classpath里指定scala-library.jar。 对于classpath,在Unix 家族的系统上,类路径的各个项目由冒号“:”分隔,在MS Windows 系统上,它们由分号“;”分隔。例如,在linux 上你可以输入这样的命令来运行(注意classpath 最后加一个 “.”): java -classpath/usr/local/scala-2.10.4/lib/scala-library.jar:. Hello ===scala IDE 开发环境 你可以使用 eclipse 或者 intellij idea

文档评论(0)

liwenhua00 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档