Scala 初识+环境搭建

Scala是一种融合面向对象和函数式编程的现代多范式语言,强调简洁、类型安全和可扩展性。它支持类和特质的子类继承、混入组合,以及函数作为值和高阶函数。Scala的类型系统强大,支持泛型、隐式参数和模式匹配,且能与Java无缝互操作。安装Scala需要先安装JDK,然后从官网下载并配置环境变量,最后在IDEA中安装Scala插件和SDK,创建项目并编写HelloWorld程序进行验证。
摘要由CSDN通过智能技术生成

1. Scala

1.1 Scala 是什么

Scala是一门现代的多范式语言,志在以简洁、优雅及类型安全的方式来表达常用的编程模型。它平滑地集成了面向对象和函数式语言的特性。

1.2 Scala 面对对象

Scala 是一种纯面向对象的语言,每个值都相当于对象。对象的类型和行为是由特质来描述的。

类抽象机制的扩展有两种途径:

  1. 子类继承
  2. 基于混入(mixin)的组合机制

1.3 Scala 函数式编程

Scala 是一种函数式语言,每个函数相当于值。Scala 为定义匿名函数提供了轻量级的语法,支持高阶函数,允许函数嵌套及柯里化。Scala 的 case class 及其内置的模式匹配相当于函数式编程语言种常用的代数类型。对于那些非类的成员函数,单例对象提供了便捷的组织方式。

通过提取器的进一步扩展,Scala 的模式匹配概念使用了 right-igoring 序列模式,能够正则表示的方式处理处理 XML 数据。

1.4 Scala 静态类型

Scala 配备了强大表达能力的类型系统,它可以静态的强制以安全、一致的方式使用抽象。

类型系统支持: 泛型类、泛型注解、上/下类型边界、作为对象成员的内部类和抽象类型、复合类型、显示类型的自我引用、隐式参数和隐式转化、多态方法。

类型推断让用户不需要标明额外的类型信息。这些特性结合起来为安全可重用的编程抽象以及类型安全的扩展提供了强大的基础。

1.5 Scala 可扩展

Scala 提供了一种语言机制的独特组合方式,使得可以方便的以库的形式添加新的语言结构。

很多场景下,这些扩展可以不通过类似宏(macros)的元编辑工具完成,例如:

  • 隐式类:允许给已有的类型添加扩展方法
  • 字符串插值:可以让用户使用自定义的插值器进行扩展

1.6 Scala 互操作性

Scala 设计的目标式与流行的 Java 运行环境(JRE)进行良好的互操作,特别是与主流的面对对象编程语言–Java 的互操作尽可能地平滑。

Java的最新特性如函数接口(SAMs)、lambda表达式、注解及泛型在 Scala 中都有类似的是实现。

另外,Scala 中也包含 Java 中没有的特性,如缺省参数值和带明参数等。

Scala 拥有类似 Java 的编译模型(独立编译、动态类加载),且允许使用已有的成千上万的高质量类库。

1.7 Scala - Java

Scala 与 Java 等众多的 JVM 预览的共通之处,使用专门的编译器(Compiler)将源代码编译成字节码(Bytecode)文件,并最终使用 JVM(Java Virtual Machine)执行程序,所以具有和 Java 相同的优良移植性。

file

2. 环境搭建

版本说明:

JDK:1.8

IDEA:2021.2.2

⚠️ 安装 Scala 之前,需要先安装 JDK!

2.1 安装 Scala

🌈 官网链接:https://www.scala-lang.org/

🌈 版本说明:Scala的当前流行版本以 2.11.x , 2.12.x

2.1.1 下载 Scala

image-20211129200112373

image-20211129200149955

image-20211129200222896

image-20211129200416832

2.1.2 Scala 安装

双击下载的安装包,一路next,傻瓜式安装,过程中可以自定义安装路径!

2.1.3 配置环境变量

右键我的电脑 -> 高级系统设置 -> 环境变量

image-20211129201132402

修改 PATH,配置为 Scala 的 bin 目录:

image-20211129201234067

2.1.4 安装测试

在 cmd 中,输入 scala:
image-20211129201449944

2.2 Scala 的 IDEA 程序开发

2.2.1 下载 Scala 插件

file

2.2.2 创建空的 maven 工程

file

image-20211129202608502

2.2.2-1 创键子模块

此步可省略

11291

2.2.3 创建 Scala 源代码目录

11292

2.2.4 标记为源码目录

如果新建的目录为灰色,可将其标记为源码目录

11293

2.2.5 添加 Scala SDK 全局库

🌈 如果没有 SDK,可以点击 Download,下载对应版本的 SDK!

file

2.2.6 创建HelloWorld单例对象

11294

2.2.7 编写 HelloWorld

object HelloWorld {
    def main(args: Array[String]): Unit = {
        println("Hello World!")
    }
}

2.2.8 运行测试

image-20211129203715488

 


❤️ END ❤️
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JOEL-T99

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值