Scala学习之五隐式转换implicit
2017-08-13 15:33
459 查看
概述
简单说,隐式转换就是:当Scala编译器进行类型匹配时,如果找不到合适的候选,那么隐式转化提供了另外一种途径来告诉编译器如何将当前的类型转换成预期类型。第一种
class Person(val name:String)
object Person{
implicit def Person2(p :Person)=new per(p.name)
}
class per(val name:String){
def makeMiracles =println("wow wow wow ...")
}
object test {
def main(args: Array[String]): Unit = {
val p=new Person("Scala")
p.makeMiracles
}
}
第二种
class Person(val name:String)
object AAA {
implicit def Person2(p :Person)=new per(p.name)
}
class per(val name:String){
def makeMiracles =println("wow wow wow ...")
}
object test {
def main(args: Array[String]): Unit = {
import cn.yzx.spark.scala.helloworld.AAA._
val p=new Person("Scala")
p.makeMiracles
}
}
第三种
object test {
def main(args: Array[String]): Unit = {
implicit val content="GG"
talk("Scala")("mm")
talk("Scala")
}
def talk(name:String)(implicit content:String)=println(name+" "+content)
}
相关文章推荐
- scala学习笔记2-隐式转换implicit
- Scala中的Implicit(隐式转换,隐式参数,隐式类)
- 第59讲:Scala中隐式转换初体验实战详解以及隐式转换在Spark中的应用源码解析学习笔记
- scala implicit 隐式转换
- Scala 中的隐式转换 implicit
- scala学习手记35 - 隐式类型转换
- Scala中隐式参数与隐式转换的联合使用实战详解及其在Spark中的应用源码解析之Scala学习笔记-51
- Scala学习笔记09--隐式转化implicit
- Scala学习整理[第二十-二十一章 抽象成员和隐式转换]<Programming In Scala>
- scala学习笔记(十六) 类型参数与隐式转换
- scala 随笔(4) implicit 隐式转换 和冲突解决
- scala 中隐式转换 implicit的应用
- scala implicit的隐式转换
- scala学习之:隐式转换与隐式参数
- 【Spark-Scala语法】implicit(隐式转换)关键字详解
- Scala中隐式转换内幕操作规则揭秘、最佳实践及其在Spark中的应用源码解析之Scala学习笔记-55
- scala implicit 隐式转换
- 关于Scala的implicit(隐式转换)的思考
- Scala的main方法、包、for循环、操作符重载、 系统定义、implicit隐式转换及泛型
- Scala学习—隐式转换与隐式参数