码迷,mamicode.com
首页 > 其他好文 > 详细

Scala中的Implicit(隐式转换,隐式参数,隐式类)

时间:2014-12-31 21:21:55      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:

文章来自:http://www.cnblogs.com/hark0623/p/4196452.html   转发请注明

代码如下:

/**
 * 隐式转换  隐式参数  隐式类
 */

//隐式转换
class Implicit(a: A) {
  def Test: Unit = {
    println("Implicit")
  }
}

class A {

}

object Implicit {
  //隐式转换
  implicit def a2Implicit(a: A) = new Implicit(a)

  def ImplicitMethod(implicit name: String): Unit = {
    println(name)
  }

  //隐式类
  implicit class JiSuan(x: Int) {
    def add(a: Int): Int = a + 1
  }

  def main(args: Array[String]) {
    //隐式转换
    val a = new A
    a.Test

    //隐式参数
    implicit val name = "hark"
    ImplicitMethod
    ImplicitMethod("kxy")

    //隐式类
    println(2.add(2))
  }

}

输出如下:

Implicit
hark
kxy
3

 

Scala中的Implicit(隐式转换,隐式参数,隐式类)

标签:

原文地址:http://www.cnblogs.com/hark0623/p/4196452.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!