Scala中的Implicit(隱式轉換,隱式參數,隱式類)


文章來自: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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM