关于匿名类的后端工作,我有点困惑,比如我们有一个按钮,我们正在设置onclickListener
Button B = (Button)findViewById(R.id.myButton);
B.setOnClickListener(new onClickListener(){
public void onClick(View V){
Log.v("","Hello world");
}
));
后端实际发生了什么?这是否会实现View.OnClickListener或其他的接口?
答案 0 :(得分:2)
答案 1 :(得分:2)
是的,它是实现OnClickListener接口的新未命名类的实例。
答案 2 :(得分:1)
匿名类必须始终扩展类或实现接口。
b.setOnClickListener(new OnClickListener() {
public void onClick(View V) {
Log.v("", "Hello world");
}
});
在这种情况下,您将创建一个实现View.OnClickListener
接口的新匿名(未命名)类。这是有效的,因为setOnClickListener
方法采用View.OnClickListener
类型的参数。