首页 > 代码库 > Java程序的回调的实现
Java程序的回调的实现
1.回调(CallBack)或在C语言中叫做钩子函数(Hook)也叫做:模板方法模式
代码实现:
代码1
------------------------------------------------------------
package edu.neuq.oop.callback;
import java.awt.Frame;
public class PaintFrame {
public static void drawFrame(MyFrame f){
System.out.println("启动线程");
System.out.println("增加循环");
System.out.println("查看消息栈");
f.paint();//画窗口 此处即为钩子函数,通过多态的概念可以实现画各种子 类窗口
System.out.println("启动缓存,增加效率");
}
public static void main(String[] args){
drawFrame(new GameFrame02());
}
}
class GameFrame01 extends MyFrame{
public void paint(){
System.out.println("GameFrame01.paint()");
System.out.println("画窗口");
}
}
class GameFrame02 extends MyFrame{
public void paint(){
System.out.println("GameFrame02.paint()");
System.out.println("画窗口");
}
}
代码2
--------------------------------------------------------------------------
package edu.neuq.oop.callback;
import java.awt.Graphics;
public class MyFrame {
public void paint(){
System.out.println("画出我的窗口");
}
}
---------------------------------------------------------------
代码实现:
代码1
------------------------------------------------------------
package edu.neuq.oop.callback;
import java.awt.Frame;
public class PaintFrame {
public static void drawFrame(MyFrame f){
System.out.println("启动线程");
System.out.println("增加循环");
System.out.println("查看消息栈");
f.paint();//画窗口 此处即为钩子函数,通过多态的概念可以实现画各种子 类窗口
System.out.println("启动缓存,增加效率");
}
public static void main(String[] args){
drawFrame(new GameFrame02());
}
}
class GameFrame01 extends MyFrame{
public void paint(){
System.out.println("GameFrame01.paint()");
System.out.println("画窗口");
}
}
class GameFrame02 extends MyFrame{
public void paint(){
System.out.println("GameFrame02.paint()");
System.out.println("画窗口");
}
}
代码2
--------------------------------------------------------------------------
package edu.neuq.oop.callback;
import java.awt.Graphics;
public class MyFrame {
public void paint(){
System.out.println("画出我的窗口");
}
}
---------------------------------------------------------------
Java程序的回调的实现
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。