回调:
一个类Callable不自己去调用自己的方法, 让其他类调用她(Callable)自身的方法(通过给其他类提供她自己的引用)。
代码(一般javaGUI开发中添加按钮的点击事件):
[java]
public interface Clicked{
void action();
}
[java]
public class Button{
private Long btnID;
private String btnName;
private Clicked click;
public Button(){}
pulibc Button(Long btnID, String btnName){
this.btnID = btnID;
this.btnName = btnName;
}
public void addClickEvent(Clicked c){
click = c;
}
public void clickButton(){
//如果你想的话 do sth
//如果你想的话 do sth
}
}
[java]
public class Test{
pulibc static void main(String[] args){
//省略创建窗口代码
Button b = new Button(1L, "btnTest");
b.addClickEvent(new Clicked(){
public void action(){
System.out.println("button "+btnName+" has been clicked!");
}
});
b.clickButton();
}
}
然后当我们在点击按钮的时候, 就会触发这个事件。
在这个例子里, Clicked接口的action()方法其实就是回调方法。
摘自 从此爱上蒲肉格蕾铭.-^