Scala基础
一、Scala特点
1.面向对象
Scala中的每个值都是一个对象,包括基本数据类型(即布尔值、数字等)在内,连函数也是对象。 类可以被子类化,而且Scala 还提供了基于 mixin 的组合( mixin-based composition )。
类抽象机制的扩展有两种途径:一种途径是子类继承,另一种途径是灵活的混入机制。这两种途径能避免多重继承 的种种问题。
2.函数式编程
Scala也是一种函数式语言,其函数也能当成值来使用。 Scala 提供了轻量级的语法用以定义匿名函数,支持高阶函数,允许嵌套多层函数,并支持柯里化。Scala 的 case class 及其内置的模式匹配相当于函数式编程语言中常用的代数类型。
3.静态类型
Scala具备类型系统,通过编译时检查,保证代码的安全性和一致性。类型系统具体支持以下特性:
- 泛型类
- 协变和逆变
- 标注
- 类型参数的上下限约束
- 把类别和抽象类型作为对象成员
- 复合类型
- 引用自己时显式指定类型
- 视图
- 多态方法
4.扩展性
Scala的设计秉承一项事实,即在实践中,某个领域特定的应用程序开发往往需要特定于该领域的语言扩展。 Scala提供了许多独特的语言机制,可以以库的形式轻易无缝添加新的语言结构。
5.动态性
Scala使用 Actor 作为其并发模型, Actor 是类似线程的实体,通过邮箱发收消息。 Actor 可以复用线程,因此可以在程序中可以使用数百万个Actor, 而线程只能创建数千个。在 2.10 之后的版本中,使用 Akka 作为其默认 Actor 实现。
二、Scala语言特点
Scala是一门以Java虚拟机 (JVM)为运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言(静态语言需要提前编译的如: Java、C、C++等,动态语言如:JS)。
1)Scala是一门多范式的编程语言,Scala支持面向对象和函数式编程。 (多范式,就是多种编程方法的意思。有面向过程、面向对象、泛型、函数式四种程序设计方法。)
2)Scala源代码 (.scala) 会被编译成Java字节码 (.class),然后运行于JVM之上,并可以调用现有的Java类库,实现两种语言的无缝对接。
4)Scala在设计时,马丁·奥德斯基是参考了Java的设计思想,可以说Scala是源于Java,同时马丁·奥德斯基也加入了自己的思想,将函数式编程语言的特点融合到JAVA中,因此,对于学习过Java的同学,只要在学习Scala的过程中,搞清楚Scala和Java相同点和不同点,就可以快速的掌握Scala这门语言。
Scala安装
(1)在Linux和macOS系统上安装Scala
首先从Scala官网下载Scala安装包,安装包名称为“scala-2.12.15.tgz”,将其上传至/opt目录。解压安装包至/usr/local目录下。
代码: tar –zxf scala-2.12.15.tgz –C /usr/local/
(2)在Windows系统上安装Scala
1.从官网 The Scala Programming Language 下载scala安装包,安装包名称为”scala.mis”,版本为scala-2.12.15(版本大差不差都可以)
2.双击scala安装包,开始安装软件
3.建议在D盘新建一个Scala文件夹 将Scala安装包安装在新建文件夹
Ps:打开电脑终端 可以检查scala版本
4. 配置环境变量
打开此电脑属性 打开高级设置
点击环境变量
点击path然后编辑
新建Scala路径
Ps:scala路径(找到之前新建的Scala文件夹 点击bin文件夹 复制路径)
路径复制进path之后一直点击确定就ok了
以上就是配置环境变量的操作过程