`
vwpolo
  • 浏览: 192916 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Scala 介绍之 HelloWorld

阅读更多

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的支持插件,EclipseScala的插件下载地址为: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“开始函数的定义,接着声明函数名,在括号中指定参数列表,参数的声明方式是参数名:参数的类型,方法的返回值类型是在函数名后的括号后面指定的,比如你声明一个无参数的方法,返回值类型为Int可以这样写:def A():Int = {//方法内容}; 上面的main函数显示的指定返回值,系统默认返回值类型为Unit,相当于Java中的Void,不过Unit返回类型在最新的版本中已经置为@Deprecated 了,也就是说不用显示的指定返回类型Unit了,这样方法就简洁了许多。

   这里只是比较了ScalaHelloWorld写法,通过这么简单的任务显然和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/ 

分享到:
评论
7 楼 vwpolo 2009-09-12  
<div class="quote_title">Aryang 写道</div>
<div class="quote_div">
<div class="quote_title">vwpolo 写道</div>
<div class="quote_div">
<p> </p>
<p><span>   这里的<span style="">Scala</span><span>的声明类的方式和</span><span style="">Java</span><span>不同,</span><span style="">Scala</span><span>通过</span><span style="">object</span><span>来定义</span></span></p>
<p> </p>
</div>
<p> </p>
<p>楼主这块说的好像不太对吧,scala里的类还是用class定义的。因为scala里没有静态成员, public static void main 的替代方案就是定义一个 object (单例对象:singleton object)。不能用new来实例化一个单例对象,通过 [单例对象名].[方法名] 来访问成员。</p>
</div>
<p><br>   不好意思,确实是我弄错了,Scala 是通过 object 来声明一个单例对象对象的,也可以使用class 来声明一个类</p>
6 楼 Aryang 2009-09-11  
<div class="quote_title">vwpolo 写道</div>
<div class="quote_div">
<p> </p>
<p><span style="">   这里的<span style='font-family: "Courier New";'>Scala</span><span>的声明类的方式和</span><span style='font-family: "Courier New";'>Java</span><span>不同,</span><span style='font-family: "Courier New";'>Scala</span><span>通过</span><span style='font-family: "Courier New";'>object</span><span>来定义</span></span></p>
<p> </p>
</div>
<p> </p>
<p>楼主这块说的好像不太对吧,scala里的类还是用class定义的。因为scala里没有静态成员,   public static void main 的替代方案就是定义一个 object (单例对象:singleton object)。不能用new来实例化一个单例对象,通过 [单例对象名].[方法名] 来访问成员。</p>
5 楼 peijunlin2008 2009-08-22  
最近这两天看了不少Scala的贴子,关注一下!
4 楼 night_stalker 2009-07-31  
我是 hello world 达人:
print("hello world")


存为 h.scala
scala h.scala

即可 ……
3 楼 vwpolo 2009-07-31  
meladet 写道
最近也看了一些scala的资料,在语法上,比Java简单好用不少,如今JVM上真是百花齐放阿。有了那么多的动态语言。这边又发展起来一个静态语言

Scala 提供了闭包的功能,语法非常的灵活,
2 楼 meladet 2009-07-30  
最近也看了一些scala的资料,在语法上,比Java简单好用不少,如今JVM上真是百花齐放阿。有了那么多的动态语言。这边又发展起来一个静态语言
1 楼 vwpolo 2009-07-30  
真是无语: 完整内容请参考: http://www.blogjava.net/vwpolo/archive/2009/07/30/Scala.html

相关推荐

    scala-sbt-helloworld.zip

    在本教程中,我们将深入探讨如何使用VSCode(Visual Studio Code)创建一个名为"Scala-SBT-Helloworld"的Scala项目,并通过sbt进行管理。 首先,我们需要确保已经安装了以下软件: 1. **Scala SDK**: Scala运行环境...

    Scala学习之路(一)

    例如,创建一个简单的`HelloWorld.scala`文件,包含以下代码: ```scala object HelloWorld { def main(args: Array[String]) { println("Hello, World!") } } ``` 运行该程序,将在控制台输出`Hello, World!`...

    大数据技术之Scala.docx

    【描述】本文档主要介绍了Scala在大数据技术中的应用和学习Scala的重要性,同时涵盖了Scala的起源、发展历程、与Java的关系、语言特点,以及如何搭建Scala开发环境、安装IDEA插件,最后通过一个HelloWorld案例展示了...

    scala入门(仅供参考)

    例如,将上述代码保存为`HelloWorld.scala`,然后执行以下命令进行编译: ```bash scalac HelloWorld.scala ``` 这将在当前目录下生成`.class`文件,可以使用`scala`命令执行它们。 ### 2.2 运行Scala程序 编译...

    play-scala-hello-world-tutorial:在Scala中播放的Hello World教程

    【Play Scala Hello World 教程】是初学者进入Scala编程和Play Framework开发的绝佳起点。Play Framework是一个开源的Web应用框架,它基于JVM(Java虚拟机)并以Scala和Java语言为中心,提供了构建现代、反应式Web...

    scala习题精选100道附带解析

    - B、print("HelloWorld\n"):输出HelloWorld并换行。 - C、printf("Hello%s", "World\n"):输出HelloWorld并换行。 - D、val w = "World"; println("Hello$w"):输出HelloWorld但不会自动换行,除非使用s或f字符...

    scala代码demo

    在Scala中,`HelloWorld`通常是最基础的示例,用于演示如何运行一个简单的程序。以下是一个典型的`HelloWorld`程序: ```scala object HelloWorld { def main(args: Array[String]): Unit = { println("你好,...

    面向Java开发者的Scala教程

    这将生成一个名为`HelloWorld.class`的字节码文件,可以由Scala解释器`scala`或Java虚拟机JVM运行。 2.3 运行Scala程序 运行编译后的Scala程序,可以直接通过`scala`命令,如下: ```bash scala HelloWorld ``` ...

    Scala语言入门

    - **编译命令**:假设你的Scala源文件名为`HelloWorld.scala`,则可以通过以下命令编译它: ``` scalac HelloWorld.scala ``` - **生成的`.class`文件**:编译完成后,会生成一个或多个`.class`文件。在本例中,...

    Scala Tutorial 中英文对照

    1. **对象声明**:`object HelloWorld` 表示定义了一个名为 `HelloWorld` 的单例对象。在 Scala 中,单例对象是一种特殊类型的类,它可以被视为只有一个实例的类。这里定义的 `HelloWorld` 类和它的唯一实例具有相同...

    ev3.helloworld:Scala 中的 Mindstorms EV3 Hello World

    EV3 你好世界 Hello World 在 Scala 中 0.8.1-beta 2.11 如何使用 在 EV3 上安装 运行sbt assembly创建可执行的helloworld.jar文件... 在 leJOS 下的 EV3 Programs上选择Programs &gt; helloworld.jar &gt; Execute program

    spring mvc 在 intellij 的 helloworld 基本配置

    为了搭建基于Spring MVC框架和IntelliJ IDEA开发环境的Hello World项目,首先要掌握以下知识点: 1. **Spring MVC框架的理解**: - Spring MVC是Spring框架的一部分,用于构建Web应用程序。 - 它提供了一种MVC...

    scala-2.11.7 包

    object HelloWorld { def main(args: Array[String]) { println("Hello, World!") } } ``` 这里,`object`关键字定义了一个单例对象,`main`方法是所有Java和Scala应用程序的入口点。`println`函数用于打印字符...

    Scala的String类方法整合

    println(str1.concat(str2)) // 输出 'HelloWorld' ``` #### 6. `contentEquals(StringBuffer sb)` **功能描述**:判断当前字符串与 `StringBuffer` 是否相等。 **示例**: ```scala val str = "Hello" val sb = ...

    Scala编程详解 第13讲-Scala编程详解:面向对象编程之对象 共9页.pptx

    scalac HelloWorld.scala scala HelloWorld ``` 以上就是Scala面向对象编程中的`object`、伴生对、`apply`方法以及`main`方法的基本概念和用法。这些是Scala编程中的核心组成部分,对于理解和使用Scala进行实际开发...

    Scala下载安装教程

    Scala 的 HelloWorld 在创建好工程后,用户可以创建一个 Scala 类。在右键“src”选项中,选择“New”-&gt;“scala class”,并将 kind 选项选择为“object”。然后,输入代码,点击三角符号运行即可。 后续学习 ...

    linux上安装scala资源包 scala.zip

    例如,创建一个名为`HelloWorld.scala`的文件: ```scala object HelloWorld { def main(args: Array[String]) { println("你好,世界!") } } ``` 使用`scalac`命令编译: ```bash scalac HelloWorld....

Global site tag (gtag.js) - Google Analytics