6.7 接口参数
如果一个方法的参数是接口类型,那么我们可以将任何实现该接口的类的实例引用传递给接口参数,接口参数就可以用回调类实现的接口方法
//回调、接口参数代码例子:
public interface Example6_5_SpeakeHello {
void speakHello();
}
public class Example6_5_Chinese implements Example6_5_SpeakeHello {
@Override
public void speakHello() {
// TODO Auto-generated method stub
System.out.println("中国人喜欢打太极拳");
}
}
public class Example6_5_English implements Example6_5_SpeakeHello {
@Override
public void speakHello() {
// TODO Auto-generated method stub
System.out.println("英国人喜欢喝咖啡");
}
}
public class Example6_5_KindHello {
public void lookHello(Example6_5_SpeakeHello speakeHello) {// 接口类型参数
speakeHello.speakHello();// 接口回调
}
}
public class Example6_5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Example6_5_KindHello kindHello = new Example6_5_KindHello();
kindHello.lookHello(new Example6_5_Chinese());
kindHello.lookHello(new Example6_5_English());
}
}
/*
输出结果:
中国人喜欢打太极拳
英国人喜欢喝咖啡
*/