2 u011359326 u011359326 于 2016.01.30 16:30 提问

java中为什么监听方法的方法参数没有对象,详细代码如下

b.setOnClickListener.( new On ClickListnener( ) {方法体省略若干代码 } );

java中为什么监听方法的方法参数没有对象,详细代码如上

2个回答

caozhy
caozhy   Ds   Rxr 2016.01.30 16:38
已采纳

b.setOnClickListener.( new On ClickListnener( ) {方法体省略若干代码 } );

Listener.这里多了一个点吧。

这里b.setOnClickListener需要一个对象,而new OnClickListnener( ) 正是提供了一个匿名类的匿名对象。

u011359326
u011359326 明白,打错了,谢谢提醒
接近 2 年之前 回复
wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.01.30 16:37

setOnCickListener的参数是Listener类型,Listener是个接口,调用这个方法时传递的参数必须是这个接口的实现类。
你给出的写法中是定义了一个匿名类,直接实例化一个ClickListener接口的实现类,重新接口方法,也就是你省略的代码。
这种匿名类定义的写法,可以避免单独写一个接口实现类,是一种简化方法,如果你这个实现类只是临时用到的话,用匿名类就够了。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!