zoukankan      html  css  js  c++  java
  • scala关于HelloWorld的简解

    object HelloScala{

      //1.def表示一个方法,这是一个关键字

      //2.main表示方法名字,表示程序执行的入口

      //3.args:Array[String]表示形参。Scala的特点:将参数名写在前面,类型写在后面(go语言中也是一样,java语言中,类型在前,参数名在后)

      //4.Array[String]表示类型是一个数组

      //5.Unit= 表示该函数的返回值为空(类似java中的void)

      //6.println("Hello,scala") 输出

      def main(args:Array[String]):Unit={

        println("Hello,scala")

      }

    }

    //1.object表示一个伴生对象

    //2.HelloScala就是对象的名字,它底层真正对应的类名是HelloScala$,对象是HelloScala$类型的一个静态对象MODULE$

    //3.当我们编写的一个object HelloScala底层会生成两个.class文件,分别是HelloScala和HelloScala$

    //4.scala在运行的时候,流程如下

    //(1)先从HelloScala的main开始执行

    //public static void main(String[] paramArrayOfString){

    //  Predef$.MODULE$.main( paramArrayOfString);

    //}

    //(2)然后调用HelloScala$类的方法 HelloScala$.MODULE$.main

    //(3)执行了下面的代码

    //public void main(String[] args){

    //  Predef..MODULE$.println("Hello,scala");

    //}

    //scala认为静态和非静态的是两个东西

    //所以非静态的就写进class 名字{}中去,静态的就写进object 名字(和class同名){}中去

    -------------------------------------------------------------------------------------------------------------

    假设我写个java的HelloWorld

    public class HelloWorld{

      public static void main(String[] args){

        System.out.println("HelloWorld");

      }

    }

    我cmd中用 scala HelloWorld    :能运行

    但是   我要运行 java HelloScala   :抱歉,不能运行

    与此可见,编译器之间存在着包含关系(不是全部包含),因为scala类库中有对java类的包中。在Scala简介中画图。

  • 相关阅读:
    没有什么,开发ASP.NET时随便写写,想到什么写什么
    MS SQL Server带有时间的记录怎样查询
    给RadioButtonList绑定Selected的值
    在GridView控件内文本框实现TextChanged事件
    MS SQL Server递归查询
    ASP.NET MVC使用jQuery无刷新上传
    MySQL 慢查询操作梳理
    ubuntu系统下防火墙简单使用
    crontab日常使用梳理
    ubuntu下nginx+php5的部署
  • 原文地址:https://www.cnblogs.com/fishperson/p/11072818.html
Copyright © 2011-2022 走看看