java回调函数

本文介绍了一个简单的Java回调机制实现案例。通过定义接口MyCall及其实现类Client,演示了如何在一个类(Caller)中调用另一个类的方法。此外,还展示了如何使用匿名内部类来实现相同的功能。
</pre><pre name="code" class="java">Caller类
package function;
// 所谓的回调,就是程序员A写了一段程序(程序a),其中预留有回调函数接口,并封装好了该程序。程序员B要让a调用自己的程序b中的一个方法,于是,他通过a中的接口///回调自己b中的方法。
//程序猿a写了一段程序a,预留了回调函数接口
//程序员B要让程序猿a调用自己的程序b中的一个方法
public class Caller {
	private MyCall callInterface;
	public Caller()
	{
		
	}
	public void setCallfunc(MyCall callInterface){
		this.callInterface=callInterface;
	}
	public void call()
	{
		callInterface.printName();
	}
}

Client类

package function;
//定义程序猿b写的程序b
public class Client implements MyCall{

	@Override
	public void printName() {
    System.out.println("this is client");		
	}

}
 MyCall类

package function;<pre name="code" class="java">

//程序猿a的接口public interface MyCall {public void printName();}

Text类

package function;

public class Text {

	public static void main(String[] args) {
        Caller caller=new Caller();
        caller.setCallfunc(new Client());
        caller.call();
	}

}
或匿名类(把Client类取消)

Text2类

package function;

public class Text {

	public static void main(String[] args) {
        Caller caller=new Caller();
        caller.setCallfunc(new MyCall(){
        	public void printName(){
        		System.out.println(" this is the client");
        	}
        });
        caller.call();
	}

}



评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值