前言
就是记录一些scala中有趣的特性。
import 排除
import java.math.BigInteger.{ ONE => _, TEN } println(TEN) // println(ONE) compile error 可以把ONE 给排除掉。
抽象类型
package typeless import java.io.File import scala.io.Source /** * Created by zhenghui on 2016/10/22. */ abstract class Reader { type In val source:In def reed:String } class StringReader(val source:String) extends Reader { override type In = String override def reed: String = source } class FileReader(val source:File) extends Reader{ override type In = File override def reed: String = Source.fromFile(source).mkString } object Main extends App{ println(new StringReader("hello scala").reed) println(new FileReader(new File("d:\\Foo.java")).reed) }
捕获非致命错误
try { println(Source.fromFile("d:\\Foo.java").mkString) } catch { case NonFatal(e) => e.printStackTrace() }
版权声明:本文为chenjingbo009原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。