Scala入门教程
[TOC]
Scala是神马?
- 说的正式点,Scala是一种多范式的编程语言,其将面向对象编程与函数式编程的特性结合了起来。并且Scala同Java一样都运行在Java虚拟机之上,经过编译之后都生成的是class字节码文件,所以scala同样具有跨平台的特性,可以做到一次编写,到处运行。
- 说的通俗点,Scala是一种很有逼格的语言,具有优雅,简洁,速度等优点,对于猿圈的我们来说,还有什么比装逼更能吸引我们的呢?在深入了解后就会发现,很多在Java中的遗憾在scala中都有很好的实现。大名鼎鼎的Spark底层就是用scala实现的,如果你想好好深入了解这个大数据框架,那么一定要好好学习这门语言。
Scala的安装
前面已经说到过,Scala是运行在JVM上,所以要想运行我们的程序,首先需要确保我们的电脑上已经安装好了JDK,这个直接在oracle的官网上就有,现在最新的已经是JDK9了。
安装完运行环境,接下来就是安装Scala的编译器了,Scala的编译器将Scala源码编译为class字节码文件,然后就像运行Java的字节码那样在JVM中运行。
-
Windows上安装Scala编译器
直接登陆scala的官网进入下载,下载windows的安装包
-
在Linux中安装scala
下载上面截图中scala-sources-2.12.4.tar.gz的那个,解压到Linux中你喜欢的目录
tar -zxvf scala-2.10.6.tgz -C /usr/share/local
配置环境变量,用vim编辑器编辑/etc/profile文件
export JAVA_HOME=/usr/share/local/jdk export PATH=$PATH:$JAVA_HOME/bin:/usr/share/local/scala/bin
编辑保存后不要忘了source一下,使环境变量立即生效
source /etc/profile
写个HelloWorld测试下吧
-
按照国际惯例,学习任何一门语言首先都要写个
HelloWorld
,就像新店开张的剪彩仪式一样。我们先新建一个Hello.scala文件。内容如下:object Hello{ def main(args: Array[String]) { println("Hello World!") } }
类似于Java的main函数,不过语法看上去有点区别,细心的小伙伴也许会发现,这里每句代码结束居然没有
;
分号结束,这就是Scala的极简原则,能少写绝不多谢,当然写了也不会有问题的。编译源文件:
scalac ./Hello.scala
这时候该目录下就会生成Hello.class文件,接下类运行:
scala Hello
出现如下结果就说明运行成功了。接下来就一起来打开Scala的异世界大门吧。
-
相信对Java有一定了解的小伙伴都了解class文件是可以被反编译为Java代码的,那么Scala生成的class文件可不可以反编译为Java文件呢?当然是可以的呀:
import scala.reflect.ScalaSignature; public final class Hello { public static void main(String[] paramArrayOfString) { Hello..MODULE$.main(paramArrayOfString); } }
上面就是通过Decompiler反编译后的结果,所以这是没问题的,事实上scala和java几乎是可以无缝对接的,在scala中可以直接引用Java中的对象,所以在scala是可以使用Java非常丰富的第三方框架的,这里之后也会介绍的。
Scala的开发工具
-
工欲善其事,必先利其器。要想开发一个大型项目的话,我们总不能一直在文本编辑器中写代码吧(大佬的话可以忽略这个),一般我们习惯在IDEA中开发,在安装完IDEA之后,再安装一个scala的插件就可以了,简单方便快捷。
插件的名字就叫scala,直接搜索并安装就ok了。
接下来就像刚才那样写一个HelloWorld就Ok了:
总结
Ok,入门教程就差不多了。之后就详细介绍 Scala的更多基础以及高级用法。感兴趣的小伙伴可以关注我的微信公众号,会在第一时间更新。
今天的文章Scala入门教程 (一)分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/21638.html