Groovy(五)
对于JDK的扩展
Object类的扩展
dump方法
返回对象一些基本信息,比如Class对象是什么,hash码,字段
class user{
def id=102
def name="groovy"
}
println user.dump()
指定上下文的with方法
该方法接收一个闭包作为参数,在闭包内调用的任何方法都会自动解析到上下文对象中
list = [1,2,3,4,5,6,7,8]
list.with {add(9);add(10)}
println list
间接访问属性
class user{
def id=102
def name="groovy"
}
user1 = new user();
println user1.id
println user1["name"]
间接访问方法
class user{
def id=102
def name="groovy"
def call(){
println "no args call method"
}
def call(str){
println "one args call method$str"
}
def call(str,str1){
println "two args call method$str,$str1"
}
}
user1 = new user();
user1.invokeMethod("call",null)
user1.invokeMethod("call","call")
user1.invokeMethod("call",["call","call1"] as Object[])