Scala最近受到了大量关注
Scala语言的名称来自于“可伸展的语言”,Scala 是一种函数对象混合的语言。它可以运行在Java 平台上,Scala程序会被编译为JVM的字节码。它们的执行期性能通常与Java程序一致。Scala代码可以调用Java方法,访问Java字段,继承自Java类和实现Java接口
下载并安装 Scala
可以从 Scala 主页: http://www.scala-lang.org/ 下载 Scala 包,截止到目前为止,最新的发行版是 2.7.5-final,同时也提供了IDE的支持插件,Eclipse的Scala的插件下载地址为:http://www.scala-lang.org/node/94,也可以通过Eclipse 的Update Manager 的方式下载:http://www.scala-lang.org/scala-eclipse-plugin (现在的Eclipse 插件支持的好像比较差劲)
将Scala的下载压缩包解压,比如解压地址是:C:\Program Files\Java\scala-2.7.5,然后设置环境变量,将SCALA_HOME 设置为:C:\Program Files\Java\scala-2.7.5,将SCALA_HOME\bin 添加到Path环境变量中,打开命令行输入:scalac -version 测试,如果能够正确输入版本信息就OK了。
开始认识Scala
在计算机科学领域大家都达成了一个默契,通常都是使用“HelloWorld" 作为演示程序,这里也不例外,Scala的语法和Java还是存在很大不同,就像国外的一位大牛批判Scala是"为了不同而不同",为何不能像Groovy那样采用和Java接近的语法,如果你是从JDK 转到 Scala,学习Scala 的感觉可能会很不同,也可能有排斥它的情绪,其实,通常有这种感觉可能是因为对它不熟悉,如果深入了解背后的设计意图,可能会改变你现在的观点。
下面来看一下Java中的 HelloWorld写法:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("HelloWorld");
}
}
Scala 的 HelloWorld :
1 object HelloWorld {
2 def main(args: Array[String]) {
3 System.out.println("HelloWorld");
4 }
5 }
这里的Scala的声明类的方式和Java不同,Scala通过object来定义,在方法块中使用“def“开始函数的定义,接着声明函数名,在括号中指定参数列表,参数的声明方式是参数名:参数的类型,方法的返回值类型是在函数名后的括号后面指定的,比如你声明一个无参数的A 方法,返回值类型为Int可以这样写:def A():Int = {//方法内容}; 上面的main函数显示的指定返回值,系统默认返回值类型为Unit,相当于Java中的Void,不过Unit返回类型在最新的版本中已经置为@Deprecated 了,也就是说不用显示的指定返回类型Unit了,这样方法就简洁了许多。
这里只是比较了Scala的HelloWorld写法,通过这么简单的任务显然和Java进行代码简洁性的PK是分不出高下。如果想看到更精彩的对决,建议参考Scala官方网站上的文档:文档:http://www.scala-lang.org/node/197 例子:http://www.scala-lang.org/node/219 ,IBM的官方网站也有文章对Scala进行详细的介绍 http://www.ibm.com/developerworks/cn/java/j-scala/