`
bonny
  • 浏览: 76404 次
  • 性别: Icon_minigender_1
  • 来自: SH
社区版块
存档分类
最新评论

java中的匿名类和回调函数

阅读更多
//Spring中这样写
     public Object execute(SqlSessionCallback callback) {

         SqlSession session = openSession();

         Object obj = callback.doInSqlSession(session);
         if (session != null)
             session.close();

         return obj;
     }  

public int delete(final String statement, final Object param) {
         //引用内部方法,参数是回调函数,回调函数负责资源管理,通过匿名内部类,可以使用本函参数。
         return (Integer) execute(new SqlSessionCallback() {

             public Object doInSqlSession(SqlSession session) {
                 if (param != null)
                     return session.delete(statement, param);
                 else
                     return session.delete(statement);
             }
         });
     }

其实是 a b c ,ac是重复代码,非重复的b部分通过回调函数,可以重用冗余代码。

本例中,可以节约很多释放资源的代码,而中间的业务部分委托回调函数去做(平时我自己写的代码类似的情况都没有这么处理,冗余代码很多,羞愧)


哎,不过反过来想想,这么写的确很不容易看懂。要是随便写写代码就要考虑这么多,很痛苦,所以,要慎重,最好是框架级的代码才这么干。


。。。。。。。哦,写代码的习惯。
分享到:
评论

相关推荐

    java 回调函数 实现

    总结,回调函数是Java中实现事件监听和异步处理的关键技术,通过接口定义回调方法,可以在适当的时候调用这些方法来执行相应的操作。在给定的示例中,`Button.java`和`OnButtonClickListener.java`展示了如何通过...

    java自定义回调函数

    Java自定义回调函数是软件开发中的一个重要概念,尤其是在Android和SDK开发中,它极大地提高了代码的灵活性和可扩展性。回调函数允许一个方法在完成特定操作后通知另一个方法,这种设计模式在异步编程和事件处理中...

    Android回调函数的例子

    总结一下,回调函数是Java和Android开发中的核心概念,它们使我们能够以松耦合的方式处理事件和异步操作。通过理解并熟练运用回调函数,开发者可以构建更灵活、响应更快的应用程序。在实际项目中,要善于利用回调来...

    Java通过匿名类来实现回调函数实例总结

    总的来说,Java通过接口和匿名类实现回调函数,虽然与C++中的函数指针或C++11后的lambda表达式有所不同,但同样提供了灵活的功能,使得代码能够更好地解耦和复用。通过理解这一机制,开发者可以在处理异步操作、事件...

    Android编程之匿名内部类与回调函数用法分析

    在Android编程中,匿名内部类和回调函数是两个非常重要的概念,它们在事件处理、接口交互等场景中扮演着核心角色。这篇文章将深入探讨这两个概念,以及如何在实际开发中运用它们。 首先,让我们理解匿名内部类。...

    java 回调函数的理解

    2. 生命周期管理:回调函数中的对象需要妥善管理,防止内存泄漏。 五、实例解析 以下是一个简单的回调函数示例,展示了如何通过接口实现回调: ```java public interface Callback { void onTaskCompleted(String...

    Java 回调函数详解及使用.rar

    2. **异常处理**:在回调函数中处理异常可能变得复杂,因为异常可能在回调链中的任何位置抛出。 ### 替代方案:Lambda表达式和Future Java 8 引入了lambda表达式和`Future`接口,为处理回调提供了一种更简洁的方式...

    匿名内部类实现接口回调

    这个"匿名内部类实现接口回调"的示例旨在演示如何通过匿名内部类来简化回调函数的实现。下面我们将详细探讨接口回调的概念、匿名内部类的使用以及它们在实际编程中的应用。 首先,让我们理解什么是接口回调。接口回...

    Java回调函数实例代码详解

    在Java中,回调函数的实现可以通过匿名内部类来实现。例如,在上面的代码中,我们使用匿名内部类来实现ICallBack接口,并将其传递给FooBar对象。在FooBar对象中,我们可以调用postExec()方法,该方法将被回调函数所...

    IO 目录列表器 回调函数 Thinking in java 4

    在这个场景中,我们可能会用到`java.io.File`类以及回调函数的概念。回调函数是一种编程设计模式,它允许我们将方法作为参数传递给其他方法,以便在特定事件发生时被调用。 `DirList2.java`可能是一个示例程序,...

    Java中的回调使用

    通过接口、匿名内部类或Lambda表达式,开发者可以创建回调函数,在特定条件满足时执行自定义逻辑。虽然回调有时会导致代码复杂性增加,但结合现代编程工具和库,我们可以有效地管理和利用回调,提高代码的可读性和可...

    java 内部类使用(内部匿名类)

    - **代码复用**:内部类可以作为回调函数或者事件处理器,减少代码重复。 - **匿名类简化**:对于只用一次的类,匿名内部类提供了简洁的写法。 在实际开发中,Java内部类的应用广泛,比如在Swing组件事件处理、线程...

    java中的匿名内部类总结

    例如,我们经常在事件处理器或者回调函数中看到它们的身影。 匿名内部类可以作为局部变量、成员变量或方法参数存在。在作为方法参数时,通常用于传递实现了特定接口的对象,这种方式在函数式编程中尤为常见。Java 8...

    如何辨别java中的箭头函数和普通函数.pdf

    2. 作为回调函数:箭头函数可以作为回调函数,传递给其他函数作为参数。 3. 作为高阶函数:箭头函数可以作为高阶函数,传递给其他函数作为参数。 4. 作为数据处理函数:箭头函数可以作为数据处理函数,简洁地处理...

    59丨模板模式(下):模板模式与Callback回调函数有何区别和联系?1

    回调函数和模板模式都是软件设计中用于实现代码复用和扩展的重要工具,它们在不同的场景下各有优势。模板模式是一种行为设计模式,它定义了一组操作的算法骨架,同时允许子类在某些步骤中替换具体行为。而回调则是...

    java使用匿名类直接new接口.docx

    - **回调函数**:在编写回调函数时,经常需要实现一个接口作为参数传递给另一个方法。此时使用匿名内部类可以极大地简化代码。 - **事件监听器**:在GUI编程中,为按钮等控件设置监听器时,可以使用匿名内部类来实现...

    JAVA匿名类创建对象.doc

    1. **回调机制**:在事件监听器等回调机制中,使用匿名类可以简化代码,使得回调函数更加简洁明了。 2. **单次使用类**:当某个类只使用一次,且无需定义一个明确的类时,可以使用匿名类。 3. **Lambda表达式的前身*...

    接口与回调函数PPT课件.ppt

    接口与回调函数是软件开发中两个重要的概念,尤其在Java编程语言中有着广泛的应用。首先,让我们详细探讨一下这两个主题。 1. 接口(Interface): 接口在Java中是一种抽象类型,它定义了一组方法签名,但不提供...

    Java-Java函数式编程教程

    - 使用Lambda表达式简化事件处理器、比较器和回调函数。 - 使用Optional处理可能为空的对象,避免空指针异常。 - 在多线程环境中,利用函数式编程特性实现并行计算,提高程序性能。 8. **学习资源**: 你可以...

Global site tag (gtag.js) - Google Analytics