Scala-day01

Scala是一门多范式的高级编程语言,基于Java并运行在JVM上。它融合了面向对象、函数式编程等多种特性,常用于大数据处理,如Spark和Flink的开发。安装Scala后,可在IDEA中进行项目创建和测试。伴生对象是Scala中解决静态属性问题的独特方式,它们与类相互关联,提供代码的访问入口。

day01 Scala概述入门和安装测试

概述

  • 什么是Scala?
    在这里插入图片描述
    一门可伸缩有弹性(多范式:具有多种编程方法的意思。比如四种程序设计的方法:面向对象,面向过程,泛型,函数式)的高级编程语言(静态类型语言:类型必须提前指定好),logo像是一个弹簧
    在这里插入图片描述
    • 特点
      1.基于java开发,和java有类似的语法
      2.程序运行在java虚拟机
      3.具有多种语言特性
      4.相比java更加简介高效,无缝衔接java类库,集合java跨平台,自动垃圾回收等优点
      之所以可伸缩:融合了不同语言的新特性:面向对象(java),函数式编程,面向过程
      Scala基于java,代码的执行流程和java极其相似
      • Scala基于java的原因:
        Scala作者编写:Pizza & Scala,都极大推动了java语言的发展
        JDK1.5的泛型,增强for循环,自动类型转换等都是从Pizza语言引入的新特性
        JDK1.8的类型推断,λ(lambda)表达式是从Scala语言引入的新特性
  • 为什么要学Scala?
    kafka的客户端虽然是java开发的,可以使用java程序访问,但是内部代码是由Scala语言编写的
    之后的Spark(95%)Flink(30%)都是由Scala语言编写的,函数式的编程特性更利于大数据领域的开发,效率更高

安装测试

  • 解压Scala的家目录
    在这里插入图片描述
  • 配置环境变量:SCALA_HOME和PATH在这里插入图片描述
    在这里插入图片描述
  • 验证在这里插入图片描述
  • 插件安装:下载和idea(2017.3.4)一样版本的Scala插件
    • 创建项目,导入插件(本地导入,插件中搜索不到?只能从磁盘导入)在这里插入图片描述
    • 创建模块在这里插入图片描述
      在这里插入图片描述
      pom.xml不显示蓝色,只要右键pom.xml后点击Add as Maven Project即可
    • 创建包和添加框架支持在这里插入图片描述
      在这里插入图片描述
  • Hello Scala案例(测试)
    在这里插入图片描述
  • 代码解析:Gitee链接地址: link
    代码运行后target才会出现两个编译的.class字节码文件:伴生对象所属类伴生对象的伴生类
    在这里插入图片描述
  • 伴生对象伴生类和伴生对象所属类在这里插入图片描述
    伴生对象伴生类和伴生对象名字完全一样两者相伴相生,伴生对象所属类是伴生对象名字后加$
    伴生对象定义了代码的访问入口
    伴生对象所属类将全局变量,构造方法私有化
    java中使用类名调用静态属性和方法,在Scala中这样做不符合面向对象的思想,所以马丁就去除了static关键字,使用object声明伴生对象解决静态属性问题
  • IDEA中哪里是classpath?在这里插入图片描述
  • 添加源码关联:方便的查看Scala内部源码在这里插入图片描述
    在这里插入图片描述
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值