Groovy main方法

	public static void main(def args){
		// TODO Auto-generated method stub
		def greeting ='hello'
		def clos = {param->println "${greeting} ${param}"}
		clos.call('world')
		
		greeting ='Welcome'
		clos.call('world')
		
		demo(clos)
		}
	
	def demo(clo){
		def greeting ='Bonjour'
		clo.call('ken')
	}



hello world
Exception in thread "main" groovy.lang.MissingMethodException: No signature of method: static com.cenyol.example.controller.Groovy1.demo() is applicable for argument types: (com.cenyol.example.controller.Groovy1$_main_closure1) values: {com.cenyol.example.controller.Groovy1$_main_closure1@2fcac6db}
	at groovy.lang.MetaClassImpl.invokeStaticMissingMethod(MetaClassImpl.java:1155)

Groovy中 main方法不能引用其他方法。

抛出异常: 

 No signature of method: static com.cenyol.example.controller.Groovy1.demo()
</pre><pre code_snippet_id="1814346" snippet_file_name="blog_20160807_4_8090775" name="code" class="java">嵌套在groovy中不试用


这样更改代码后没有嵌套:

public class Groovy1{


	/**
	 * @param args
	 */	
	public static void main(def args){
		// TODO Auto-generated method stub
		def greeting ='hello'
		def clos = {param->println "${greeting} ${param}"}
		clos.call('world')
		
		greeting ='Welcome'
		clos.call('world')
		def aa = new test1()
		aa.demo(clos)
		}
}

		public class test1{
			def demo(clo){
				def greeting ='Bonjour'
				clo.call('ken')
		}
		}
打印结果:


hello world
Welcome world
Welcome ken


注意是welcome ken

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值