哪位帮忙解读下下列程序,有些语法不清楚是什么含义。。。
seagate
2010-11-10
package tfd.scala.squib.event; import java.util.EventObject class baseEventHelper[E <: EventObject](evtSymbol:Symbol) { def apply(delegate:E => Unit) = (evtSymbol -> delegate) def apply(delegate: =>Unit) = { def helper(evt:E) = { delegate } (evtSymbol -> helper _) } } 请问 E <: EventObject 这里,<:是什么意思? 另外最后一句(evtSymbol -> helper _),这个是一个语句还是什么?不太理解。 |
|
night_stalker
2010-11-10
<: 表明 E 必须是 EventObject 的子类
(a -> b) 是一个 key value 对,其实就是 (a, b) helper _ 把 helper 方法转换成 function 对象 故第二个 apply 也可以写成 def apply(delegate: =>Unit) = (evtSymbol, (e:E) => {delegate}) |
|
seagate
2010-11-11
原来如此,多谢night_stalker
|