Spark学习之scala基础

本文介绍在Windows环境下Scala的安装步骤与常见问题解决方法,并通过实例详细讲解Scala程序的编写、编译及执行过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

scala

windows下安装Scala过程

Download | The Scala Programming Language (scala-lang.org)

在这里插入图片描述

下载scala-2.13.6.msi直接安装

winodws本地安装scala完成之后,在cmd中检查scala是否安装好,直接输入scala即可

​ 可能有些时候会出现失败的情况,这时候删掉重新安装,重新安装的时候自定义路径,全英文不要有空格,windows的路径诸如 Program Files (x86) 是有空格的,会引起scala安装出错。

​ 还有需要说明的就是早些版本需要配置环境变量,现在比较新的可以不用配环境变量。

idea创建scala程序流程

idea ->maven ->pom.xml ->scala插件 ->Project Structure ->Global Libraries ->加上本地的scala-sdk ->添加scala框架Add Framework Support ->新建scala文件object

深度认识Scala的第一个程序

与Java的编译执行过程类似,我们写好一个HelloScala程序后先scalac编译它,然后再scala执行它。

object HelloScala {
def main(args: Array[String]): Unit = {
println(“hello,spark”)
}
}

scalac HelloScala.scala
scalac之后生成了两个.class文件,涉及到Scala伴生对象的概念,这和javac有所不同。
HelloScala.class 是伴生对象的伴生类
HelloScala$.class是伴生对象的所属类

在这里插入图片描述

HelloScala$.class

import scala.Predef.;

public final class HelloScala$
{
  public static  MODULE$;

  static
  {
    new ();
  }

  public void main(String[] args)
  {
    Predef..MODULE$.println("hello,spark");
  }
  private HelloScala$() { MODULE$ = this; }

}

HelloScala.class

import scala.reflect.ScalaSignature;

@ScalaSignature(bytes="\006\001%:Q\001B\003\t\002!1QAC\003\t\002-AQAE\001\005\002MAQ\001F\001\005\002U\t!\002S3mY>\0346-\0317b\025\0051\021a\002\037f[B$\030PP\002\001!\tI\021!D\001\006\005)AU\r\0347p'\016\fG.Y\n\003\0031\001\"!\004\t\016\0039Q\021aD\001\006g\016\fG.Y\005\003#9\021a!\0218z%\0264\027A\002\037j]&$h\bF\001\t\003\021i\027-\0338\025\005YI\002CA\007\030\023\tAbB\001\003V]&$\b\"\002\016\004\001\004Y\022\001B1sON\0042!\004\017\037\023\tibBA\003BeJ\f\027\020\005\002 M9\021\001\005\n\t\003C9i\021A\t\006\003G\035\ta\001\020:p_Rt\024BA\023\017\003\031\001&/\0323fM&\021q\005\013\002\007'R\024\030N\\4\013\005\025r\001")
public final class HelloScala
{
  public static void main(String[] paramArrayOfString)
  {
    HelloScala..MODULE$.main(paramArrayOfString);
  }
}

Java运行scala程序需要scala的jar包,安装之后在安装目录的lib里有(java和Scala都是运行在JVM上的)

java -cp D:\scala\lib/scala-library.jar; HelloScala
在这里插入图片描述

谨记:

HelloScala.class 是伴生对象的伴生类

HelloScala$.class是伴生对象的所属类

class Student(name: String, var  age: Int) {
  def printInfo(): Unit = {
    println(name + " " + age + " " + Student.school)
  }

}

//引入伴生对象
object Student{
    val school: String = "ZWU"

  def main(args: Array[String]): Unit = {
    val alice = new Student("alice",20)
    val bob = new Student("bob",23)

    alice.printInfo()
    bob.printInfo()
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值