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

scalac 学习

时间:2016-02-01 18:00:15      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:

val logEnable = false
def log(msg: => String) =
    if (logEnable) println(msg)
val MSG = "programing is running"
log(MSG + 1 / 0)

 

class Stu(private val name:String,private var age:Int)
{
	def Name = name;
	def Age = age;
	def Age_=(age: Int) = this.age = age;
}
val s = new Stu("wengmj",36);
s.Age=37
println(s.Age);

 

def withClose(closeAble: { def close(): Unit })(op: { def close(): Unit } => Unit) {
    try {
        op(closeAble)
    } finally {
        closeAble.close()
    }
}

class Connection {
    def close() = println("close Connection")
}

val conn: Connection = new Connection()
withClose(conn)
{
	conn =>println("do something with Connection");
}

  

def withClose[A <: { def close(): Unit }, B](closeAble: A)
  (f: A => B): B =
  try {
    f(closeAble)
  } finally {
    closeAble.close()
  }
class Connection {
  def close() = println("close Connection")
}
val conn: Connection = new Connection()
val msg = withClose(conn) { conn =>
  {
    println("do something with Connection")
    "123456"
  }
}

println(msg)

  

 

scalac 学习

标签:

原文地址:http://www.cnblogs.com/scala/p/5175357.html

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