Scala知识点整理

scala是一门多范式编程语言(面向对象,函数式编程)

1,scala中定义一个类不用提供对外的set,get方法。

2,伴生对象:一定是object+类名。且在同一文件中。特点:可以访问类中被private修饰的属性和方法。private[this],  加上this后,伴生对象也不能使用。

3,类的私有private属性可以在类内部或者伴生对象中使用。

4,伴生对象的作用:(它是静态的)在object中定义的属性,相当与static的。

5,有包访问权限的概念。

6,scala的构造器(创建实例时赋值)

     1,主构造器:跟类名交织在一起,会成为这个类的成员变量。

      2,辅助构造器:是对主构造器的扩展。

          def this  第一行必须先调用主构造器。辅助构造器不用var,val修饰。

      3,不加修饰符的变量,不会成为成员变量,只能在类的内部使用,被继承时,并不会被继承。

            私有构造器,只能在伴生对象中new

            主构造器的方法不会被执行。

对象

1,scala中的对象与实例不同。对象指的是object。(定义的都是静态的,单例的)。实例指的是new出来的。

2,object名字后面跟括号,括号中有参数,执行时会找参数类型,个数一样的apply方法。

继承

1,ctrl+i:实现未实现的方法。

   子类要实现父类中的抽象方法,可以加override也可以不加。

2,ctrl+o:重写

    子类要实现一个非抽象的方法,必须加override关键字。

3,接口用with,继承多个接口时第一个用extends后面的用with。

     继承相当与一个人只能有一个父亲,接口相当与这个人可以有多个老师。

4,可以动态的实现特质。new +类名 +with+接口名

模式匹配

1,模式匹配匹配字符串内容。

2,根据类型进行模式匹配。case中也可以进行判断。

样例类

case   样例类(可以封装数据)    多例的

          样例对象(不封装数据)     单例的

主要功能:进行模式匹配,还可以封装数据,速度快,不用new即可创建实例。

柯里化方法

1,两种定义方法       def   m1 (x:Int)(y:Int) = x+y

                                  def   m2 (x:Int)=(y:Int) = x+y

隐式转换


1,implicit 参数的隐式转换

       如果剩余参数有implicit修饰的参数,在执行时,会到上下文中查找跟implicit修饰类型一致的参数,如果找到了,就将该参数传入,如果没有找到,使用默认的。

    方法的隐式转换

      scala提供了隐式转换功能,程序在编译时,会到程序运行环境中找。有没有将file转换成另外一种类型,如果转换成另外的类型中有read,那么就用该read方法。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hadoop和Spark是大数据处理领域中最流行的两个框架。以下是它们的知识点整理汇总: Hadoop: 1. Hadoop是一个开源的分布式计算框架,用于存储和处理大规模数据集。 2. Hadoop包括两个核心组件:HDFS(Hadoop分布式文件系统)和MapReduce(分布式计算框架)。 3. HDFS是一个分布式文件系统,用于存储大规模数据集。它将数据分成块并存储在不同的节点上,以实现数据的高可靠性和可扩展性。 4. MapReduce是一种分布式计算框架,用于处理大规模数据集。它将数据分成小块并在不同的节点上并行处理,以实现高效的数据处理。 5. Hadoop还包括其他组件,如YARN(资源管理器)和HBase(分布式NoSQL数据库)。 Spark: 1. Spark是一个快速、通用、可扩展的分布式计算框架,用于处理大规模数据集。 2. Spark的核心组件是Spark Core,它提供了分布式任务调度、内存计算和数据处理功能。 3. Spark还包括其他组件,如Spark SQL(用于结构化数据处理)、Spark Streaming(用于实时数据处理)和MLlib(用于机器学习)。 4. Spark使用RDD(弹性分布式数据集)作为其基本数据结构,它是一个可分区、可并行计算和可恢复的数据集合。 5. Spark支持多种编程语言,如Scala、Java、Python和R。 总结: Hadoop和Spark都是用于处理大规模数据集的分布式计算框架,它们有不同的核心组件和特点。Hadoop主要用于存储和处理大规模数据集,而Spark则更加注重数据处理的速度和效率。在实际应用中,可以根据具体需求选择合适的框架。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值