scala 2.10开始支持动态类型,做个类方面使用,动态对象的成员也可以动态调用。
val person = DynamicImpl()
person.name = "zs"
person.name.value
val bird = DynamicImpl()
bird.sing = (x:Any)=>{ 0.until(4).foreach( _ => {
print("hello ")
Thread.sleep(1000)
print("hello ")
Thread.sleep(1000)
println("how are you?")
Thread.sleep(1000)
} ) }
person.bird = bird
person.bird.sing()
通过元组解决参数个数问题
person.do0 = (x:Unit)=>println("no parameter")
person.do3 = (x:(String,Int,Double))=>println(" 1st para is "+x._1+", 2nd para is "+x._2.toString+", 3rd para is "+x._3.toString)
person.do0(())
person.do3(("abc",1,2.0))
(7月23日修改,定义一个类更清晰)
impor

本文介绍了Scala从2.10版本开始支持的动态类型特性,并展示了如何创建动态对象及其成员的动态调用。示例中,创建了DynamicImpl类,实现了赋值和调用动态方法的功能,包括通过元组解决不同参数个数的问题。
最低0.47元/天 解锁文章
648

被折叠的 条评论
为什么被折叠?



