知识大全 在Java中实现回调过程

Posted 事件

篇首语:幼敏悟过人,读书辄成诵。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 在Java中实现回调过程相关的知识,希望对你有一定的参考价值。

在Java中实现回调过程  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

     摘要:  Java接口提供了一个很好的方法来实现回调函数 如果你习惯于在事件驱动的编程模型中 通过传递函数指针来调用方法达到目的的话 那么你就会喜欢这个技巧      作者 John D Mitchell    在MS Windows或者X Window系统的事件驱动模型中 当某些事件发生的时候 开发人员已经熟悉通过传递函数指针来调用处理方法 而在Java的面向对象的模型中 不能支持这种方法 因而看起来好像排除了使用这种比较舒服的机制 但事实并非如此     Java的接口提供了一种很好的机制来让我们达到和回调相同的效果 这个诀窍就在于定一个简单的接口 在接口之中定义一个我们希望调用的方法     举个例子来说 假设当一个事件发生的时候 我们想它被通知 那么我们定义一个接口   public interface InterestingEvent      // This is just a regular method so it can return something or    // take arguments if you like     public void interestingEvent ();      这就给我们一个控制实现了该接口的所有类的对象的控制点 因此 我们不需要关心任何和自己相关的其它外界的类型信息 这种方法比C函数更好 因为在C++风格的代码中 需要指定一个数据域来保存对象指针 而Java中这种实现并不需要     发出事件的类需要对象实现InterestingEvent接口 然后调用接口中的interestingEvent ()方法     public class EventNotifier      private InterestingEvent ie;  private boolean somethingHappened;     public EventNotifier (InterestingEvent event)    // Save the event object for later use   ie = event;   // Nothing to report yet   somethingHappened = false;       //      public void doWork ()    // Check the predicate which is set elsewhere   if (somethingHappened)        // Signal the even by invoking the interface s method     ie interestingEvent ();      //          //       在这个例子中 我们使用了somethingHappened这个标志来跟踪是否事件应该被激发 在许多事例中 被调用的方法能够激发interestingEvent()方法才是正确的   希望收到事件通知的代码必须实现InterestingEvent接口 并且正确的传递自身的引用到事件通知器   public class CallMe implements InterestingEvent    private EventNotifier en;     public CallMe ()    // Create the event notifier and pass ourself to it   en = new EventNotifier (this);       // Define the actual handler for the event     public void interestingEvent ()    // Wow! Something really interesting must have occurred!  // Do something        //       希望这点小技巧能给你带来方便      关于作者   John D Mitchell在过去的九年内一直做顾问 曾经在Geoworks使用OO汇编语言开发了PDA软件 兴趣于写编译器 Tcl/Tk和Java系统 和人合著了《Making Sense of Java》 目前从事Java编译器的工作 cha138/Article/program/Java/hx/201311/25825

相关参考

知识大全 Java使用回调和线程处理耗时响应过程[1]

Java使用回调和线程处理耗时响应过程[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nbs

知识大全 Java中限时线程回调方式的实现

Java中限时线程回调方式的实现  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  线程回调方式我们

知识大全 java回调

  一个类Callable不自己去调用自己的方法让其他类调用她(Callable)自身的方法(通过给其他类提供她自己的引用)  代码(一般javaGUI开发中添加按钮的点击事件)[java]viewp

知识大全 Java的回调函数

Java的回调函数  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   

知识大全 用 Java 实现回调例程

Java技巧:用Java实现回调例程  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  熟悉MSWi

知识大全 Java中的闭包与回调

Java中的闭包与回调  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  闭包是一个可调用的对象它记

被动回调

被动回调个股在冲高过程中,突然遇到大盘调整,会引发较大的抛压,庄家会顺势而为,股价重新回到低位,这样在日K线图上会留下长长的上影线。如果量能配合得比较好,而且股价刚刚脱离主力成本区,这种股票会很快恢复

主动回调

主动回调大盘在平稳运行过程中,个股快速拉高,之后逐波走低,在日K线上留下长上影线,这种股票一般显示庄家拉高派发,至少就快速拉至涨停,之后不断派发,其日K线留下了长上影线。由于该股累计升幅较大,庄家获利

MACD指标0轴买入法

股价上升,MACD指标上穿O轴后进人多头走势中,整体向好,但是也不可避免地产生回调,没有直线运动的股价走势。在股价回调的过程中,MACD指标也自然会跟随下跌,甚至产生死叉。但是如果MACD指标在回调时

知识大全 获取java线程中信息的两种方法[3]

   二回调   轮询方法最大的特点是主类Main不断询问线程类是否结束这实际上大量浪费了运行时间特别是当线程特别多的时候因此如果反过来在线