//========================================= Main : 提供回调接口者
import java.util.ArrayList;
import java.util.List;
public class Main {
// 定义回调接口
public interface Callback {
int add(int a, int b);
void addObject(List<Integer> ls);
}
public void testAdd(Callback callback) {
int c = callback.add(1,2);
System.out.println(c);
}
public void testAddObject(Callback callback) {
List<Integer> ls = new ArrayList<>();
ls.add(-1);
// ls保存TestMain传入信息
callback.addObject(ls);
for(int n : ls) {
System.out.println(n);
}
}
public static void main(String[] args) {
Main so = new Main();
TestMain callback = new TestMain();
so.testAdd(callback);
so.testAddObject(callback);
}
}
// ===========================================实现回调接口者
import java.util.List;
public class TestMain implements Main.Callback {
@Override
public int add(int a, int b) {
return a + b;
}
// 往Main提供的接口中传入信息
@Override
public void addObject(List<Integer> ls) {
ls.add(1);
ls.add(2);
}
}
网友评论