- Scala与Java的最大区别:
Scala 语句末尾的分号 ; 是可选的。
- Scala基础语法:
- 区分大小写
- 类名
- 方法名称
- 程序文件名
- def main(args:Array[string]
- 第一个Scala程序:
- 交互式编程
- 脚本形式
- 运行
- 标识符:
Scala 可以使用两种形式的标志符,字符数字和符号
- 字符数字使用字母或是下划线开头,后面可以接字母或是数字
- Scala 的命名规则采用和 Java 类似的 camel 命名规则,首字符小写
- 名的首字符还是使用大写。此外也应该避免使用以下划线结尾的标志符以避免冲突
- Scala 内部实现时会使用转义的标志符
- 混合标志符由字符数字标志符后面跟着一个或多个符号组成
- Scala关键字
- Scala注释
- 空行和空格
一行中只有空格或者带有注释,Scala 会认为其是空行,会忽略它。标记可以被空格或者注释来分割。
- 换行符
Scala是面向行的语言,语句可以用分号(;)结束或换行符。
- Scala包
- 定义包:
Scala 使用 package 关键字定义包,在Scala将代码定义到某个包中有两种方式:
第一种方法和 Java 一样,在文件的头定义包名,这种方法就后续所有代码都放在该包中。
第二种方法有些类似 C#,
第二种方法,可以在一个文件中定义多个包。
- 引用包:
Scala 使用 import 关键字引用包。
import语句可以出现在任何地方,而不是只能在文件顶部。import的效果从开始延伸到语句块的结束。这可以大幅减少名称冲突的可能性。
- Scala简介
- Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性
- Scala 运行在 Java 虚拟机上,并兼容现有的 Java 程序
- Scala 源代码被编译成 Java 字节码,所以它可以运行于 JVM 之上,并可以调用现有的 Java 类库
- Scala特性
- 面向对象特性:
类和对象,继承和多态,:抽象类和特质,封装
- 函数式编程:
高阶函数,不可变性,模式匹配,闭包
- 类型系统:
静态类型,泛型类,协变和逆变,标注,类型参数的上下限约束,把类别和抽象类型作为对象成员,复合类型,引用自己时显式指定类型,视图,多态方法
- 扩展性
- 并发性
Akka框架
Futures和promises
Scala并发集合
- 强大的标准库
集合框架
字符串处理
Io操作
- 与Java互操作性
无缝调用
Java标准库
- 模块化和可扩展性
特质
隐式转换和参数
- Scala语言的特点
- 优雅
- 速度快