- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
1
第一章
初识Scala
1.1
Scala语言介绍
Scala是一种现代的多范式编程语言,结合了面向对象编程和函数式编程的特性,其的设计目标是
提供一种更加简洁、富有表现力以及类型安全的语言,同时保持与Java良好的互兼容性。
Scala这个名字来源于“可扩展语言”(Scalable
Language)的缩写,意味着这种语言可以适应
各种规模的应用程序开发,后续我们讲解的Spark分布式计算框架底层源码就是使用Scala进行开
发,并且在实际开发场景中,Spark编程主要也会使用Scala,目前最新的Spark3.5版本与Scala2.
12/2.13兼容,所以在讲解Scala时我们使用Scala2.13.10版本。
1.2
Scala语言特点
Scala语言具备如下特点:
面向对象编程(Object-Oriented
Programming)
Scala支持类与对象的概念,提供继承和多态功能,提供强大的类抽象机制,支持灵活的代码复用
和扩展。
函数式编程(Functional
Programming)
函数可以赋值给变量、作为参数传递给其他函数,或作为返回值。Scala中支持高阶函数、匿名函
数、嵌套函数、柯里化函数,并提供强大的模式匹配功能,支持
case
class
和数据类型的匹配操
作。
静态类型系统(Static
Typing)
Scala编译时进行类型检查,支持自动类型推断机制,自动推测类型,支持泛型类、类型参数的上
下界、协变和逆变、多态方法等高级类型特性。
混合编程范式
面向对象和函数式编程的无缝结合。既可以使用传统的类、对象和继承机制(Trait
特质特性),
也可以使用函数式工具如
map、filter、reduce
等,灵活的编程方式适合复杂和多样化的开发需
求。
并发编程支持(Concurrency
Programming)
提供轻量级线程模型(如
Actors
和
Akka),适用于高效并发和分布式编程,Scala
语言适合并
发场景,避免了死锁和数据竞争问题。
与
Java
生态系统的兼容性
Scala
是一种运行在
JVM
上的语言,Scala源代码“.scala”文件会被编译成Java字节码文件“.
class”并最终由JVM执行,可以与
Java
无缝互操作,可直接调用
Java
类库和框架,方便在现
有
Java
项目中使用。
Scala官网地址:/
1.3
Scala安装使用
由于Scala是一种运行在JVM之上的语言,所以使用Scala前需要配置JDK以便支持Scala编译和运
行。本小节主要介绍在Window中配置Scala以及在IDEA开发工具中配置使用Scala,默认环境中
安装了JDK8,各个JDK版本与Scala最小版本兼容信息可以参考:
/overviews/jdk-compatibility/overview.html。
1.3.1
Window配置Scala
按照如下步骤进行Window配置Scala操作。
1)
下载Scala2.13.10版本并解压
在Scala官网“/”中下载Scala安装包,并解压到Window路径中。
找到对应的Scala版本点击进入下载,这里选择Scala2.13.10版本。
将下载好的安装包解压到C盘根目录中(可以根据自己情况选择目录,要求目录无中文、无空格、
无特殊符号):
2)
配置环境变量
Scala环境变量配置与JDK环境变量配置类似。在window中右键“我的电脑”-“属性”-“高
级系统设置”,在系统变量中创建“SCALA_HOME”并配置解压Scala的路径:
您可能关注的文档
最近下载
- 中外建筑史幻灯片.ppt VIP
- 河北高速公路集团有限公司招聘笔试题库2024.pdf
- 《景观规划设计》课件——乡村景观园林庭院设计.pptx VIP
- 风力发电设备加工项目投资计划书(参考).docx
- 人教版高中地理必修第一册第一章:宇宙中的地球大单元整体教学设计2024.docx
- 工程造价软件应用 课件 第2章 广联达BIM土建计量平台应用.pptx
- 特色校本教材——魔幻数学(一年级).docx VIP
- 2025一建《建筑工程管理与实务》考前6套模拟卷.docx VIP
- 工程勘察服务成本要素信息(2022版).pdf VIP
- 2024年秋季学期新人教版七年级上册英语课件 Unit 1 You and Me (第4课时) Section B 1a-1d.pptx VIP
文档评论(0)