隐式转换
2017-06-11 本文已影响0人
博瑜
//隐式转换 将file =>RichFile MyPreDef 是门面
import java.io.File
import scala.io.Source
object MyPreDef {
implicit def readFile(f:File) = new RichFile(f)
}
class RichFile(val f: File) {
def read() = Source.fromFile(f).mkString
}
object RichFile {
def main(args: Array[String]): Unit = {
val f = new File("path")
//val content = new RichFile(f).read //显示定义
import MyPreDef.readFile
f.read //隐式定义
}
}