大数据系列修炼-Scala课程59
核心内容:
1、Scala中隐式转换初体验实战详解以及隐式转换在Spark中的应用源码解析
1、Scala中隐式转换初体验操作代码实战 |
1>Scala中的隐式转换本质上相当于C语言中的强制类型转换以及Java中的自动装箱技术的应用扩展
2>Scala中隐式转换的由来:我们想使用某一个类(B)中的特殊的方法,但是自身类(A)又没有提供这样的一个方法,通过隐式转换,
可以将自身类(A)的类型转换成提供相应方法的类(B)的类型,进而调动相应的方法。
3>隐式转换本身可以把一个类的实例当做另外一个类的实例来使用,从使用者的角度而言,使用者使用的还是当前自己的类,但是这个
类却拥有了额外的一些方法。
4>隐式转换的完成需要两个条件:
(1)首先必须有一个增强的类,在这类中含有我们需要的方法
(2)通过隐式转换函数将已有的类型转换为增强的类型
5>隐式转换函数的命名一般这样写:前面是转换前的类型,后面是增强的(转换后)类类型 :如 int2Integer
6>在隐式方法中,函数的参数就是转换前的类的实例,函数体的执行体就是创建一个增强类对象
7>隐式转换中:增强类的主构造器的参数类型一般是转换前的类的类型,即增强类一般是增强已有