第16节:scala使用implicit进行的隐式转换
来源:互联网 发布:php网页自动跳转代码 编辑:程序博客网 时间:2024/06/14 18:38
package com.dt.spark.scala.bascis
/**
*使用implicit可以是所在类在执行没有的方法时检查下自己或者子类中是否存在该方法,如果存在则不会报错
/**
*使用implicit可以是所在类在执行没有的方法时检查下自己或者子类中是否存在该方法,如果存在则不会报错
*1.在object中隐式转换
*2.使用implicit 进行的隐式转换
*/
class Man (val name:String)
/* 第一种方式
* object Man {
implicit def man2SuperMan(man:Man) = new SuperMan(man.name)
}*/
class SuperMan(val name:String){
def makeMiracles= println(this.name +" wow wow , i am superman")
}
object IMFimplicits {
//第二种方式
implicit def man2SuperMan(man:Man) = new SuperMan(man.name)
}
object HelloImplicits {
def main(args: Array[String]): Unit = {
import com.dt.spark.scala.bascis.myimplicits._
val man =new Man("scla")
man.makeMiracles
//做默认配置
implicit val content = "ScaLa"
// talk("java")("money")
talk("java")
talk("java")("spark")
}
def talk(name:String)(implicit content :String) = println(name+ " : "+content)
}
打印结果:
scla wow wow , i am superman
java : ScaLa
java : spark
*/
class Man (val name:String)
/* 第一种方式
* object Man {
implicit def man2SuperMan(man:Man) = new SuperMan(man.name)
}*/
class SuperMan(val name:String){
def makeMiracles= println(this.name +" wow wow , i am superman")
}
object IMFimplicits {
//第二种方式
implicit def man2SuperMan(man:Man) = new SuperMan(man.name)
}
object HelloImplicits {
def main(args: Array[String]): Unit = {
import com.dt.spark.scala.bascis.myimplicits._
val man =new Man("scla")
man.makeMiracles
//做默认配置
implicit val content = "ScaLa"
// talk("java")("money")
talk("java")
talk("java")("spark")
}
def talk(name:String)(implicit content :String) = println(name+ " : "+content)
}
打印结果:
scla wow wow , i am superman
java : ScaLa
java : spark
spark源码鉴赏:
阅读全文
0 0
- 第16节:scala使用implicit进行的隐式转换
- scala implicit 隐式转换
- scala implicit隐式转换
- Scala implicit隐式转换
- scala implicit 隐式转换
- scala implicit 隐式转换
- scala implicit 隐式转换
- scala implicit 隐式转换
- scala隐式转换implicit
- 关于Scala的implicit(隐式转换)的思考
- scala的implicit关键字----不仅仅是隐式类型转换
- scala学习笔记2-隐式转换implicit
- 【Spark-Scala语法】implicit(隐式转换)关键字详解
- scala 中隐式转换 implicit的应用
- scala隐式参数(implicit)
- scala隐式参数(implicit)
- scala隐式参数(implicit)
- implicit隐式转换
- java基础8:properties集合,序列化,打印流,commons-IO,对应案例
- Canvas和svg的区别
- 信息熵是什么
- 02-设置文件类型的扩展名显示
- JDK线程池源码分析
- 第16节:scala使用implicit进行的隐式转换
- 2017.11.16第十二周周中总结
- Ceres使用(二)
- LeetCode(4)
- oracle初步访问
- make makefile cmake qmake都是什么,有什么区别?
- java知识点
- linux
- Matlab中fminunc函数的意义以及options函数的初级用法。