Lamb表达式匿名类实现接口方法

Lamb表达式匿名类实现接口方法

import java.util.ArrayList;

public class HandlerDemo{

    public static void main(String[] args) {
        ArrayList<Object> list = new ArrayList<>();
        // 测试匿名类实现doBusy方法
        new HandlerDemo().testHandler(() -> {
            list.add("测试匿名类实现doBusy方法");
        });

        System.out.println(list);
    }
    //调用接口方法
    private void testHandler(Handler handler) {
        handler.doBusy();
    }

}

public interface Handler {

    void doBusy();

}   

原文地址:https://www.cnblogs.com/Lambquan/p/12090717.html

时间: 2024-10-07 13:22:49

Lamb表达式匿名类实现接口方法的相关文章

匿名内部类是一种特殊的局部内部类,它是通过匿名类实现接口

匿名内部类(必须掌握): 匿名内部类是一种特殊的局部内部类,它是通过匿名类实现接口. IA被定义为接口. IA I=new IA(){}; 注:一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类,没有类名,根据多态,我们使用其父类名. 因其为局部内部类,那么局部内部类的所有限制都对其生效. 匿名内部类是唯一一种无构造方法类. 匿名内部类在编译的时候由系统自动起名Out$1.class. 如果一个对象编译时的类型是接口,那么其运行的类型为实现这个接口的类. 因匿名内部类无构造方法

使用模板方法模式+私有内部类+匿名类解决各个方法间代码结构类似的问题。

package org.hibernate.dao; import java.io.Serializable; import org.hibernate.*; import org.hibernate.entity.*; //使用模板方法模式+私有内部类+匿名类解决各个方法间代码结构类似的问题. public class UserDAOImpl implements UserDAO { private abstract class UserDAOTemplate{ abstract protec

内部类与匿名类(转)

Java 中的内部类和匿名类* 为什么需要内部类? Java 内部类有什么好处?为什么需要内部类? 首先举一个简单的例子,如果你想实现一个接口,但是这个接口中的一个方法和你构想的这个类中的一个方法的名称,参数相同,你应该怎么办?这时候,你可以建一个内部类实现这个接口.由于内部类对外部类的所有内容都是可访问的,所以这样做可以完成所有你直接实现这个接口的功能. 不过你可能要质疑,更改一下方法的不就行了吗? 的确,以此作为设计内部类的理由,实在没有说服力.真正的原因是这样的,java 中的内部类和接口

【转 Java 中的内部类和匿名类

 Java 中的内部类和匿名类 2008-10-16 13:47:41 标签:Java 内部类 匿名类 休闲 职场 Java 中的内部类和匿名类* 为什么需要内部类? Java 内部类有什么好处?为什么需要内部类? 首先举一个简单的例子,如果你想实现一个接口,但是这个接口中的一个方法和你构想的这个类中的一个方法的名称,参数相同,你应该怎么办?这时候,你可以建一个内部类实现这个接口.由于内部类对外部类的所有内容都是可访问的,所以这样做可以完成所有你直接实现这个接口的功能. 不过你可能要质疑,更改一

JAVA-接口 抽象类 内部类 匿名类

接口中所有属性是Public static final,方法都是public. 访问修饰符则必须是public 接口也可扩展另一个接口,相似于类的继承,关键字extends http://www.cnblogs.com/dolphin0520/p/3811437.html 深入理解Java的接口和抽象类 http://baike.baidu.com/view/2493204.htm 面向接口编程 接口泛指供别人调用的方法或者函数,是对行为的抽象 继承是一个 "是不是"的关系,而 接口

Java学习-匿名类

1.筛选出符合条件的Hero:要求hp>100 && damage<50 匿名类实现: 先定义接口HeroChecker,其中的test()方法实现了Hero的筛选 1 package generic; 2 3 import charactor.Hero; 4 5 public interface HeroChecker { 6 public boolean test(Hero h); 7 } 1 package generic; 2 3 import java.util.Ar

解决内存泄漏更加清楚的认识到Java匿名类与外部类的关系

1.事件起因 在做项目的时候,通过Android Studio的Memory Monitor窗口观察程序内存使用情况,发现当程序退出的时候,有一部分应该释放掉的内存没有释放掉,知道程序中应该有内存泄漏了.为了发现程序中的内存泄漏,我切换了IDE工具到Eclipse,里面安装了内存泄漏的分析工具MAT,具体怎么用MAT分析内存泄漏可以自己Google,我把我自己找到内存泄漏的地方贴出来 从上图中可以看到,有24M左右的内存被mView(其实它真正是一个Fragment)这个变量持有,导致Java垃

[二] java8 函数式接口详解 函数接口详解 lambda表达式 匿名函数 方法引用使用含义 函数式接口实例 如何定义函数式接口

函数式接口详细定义 package java.lang; import java.lang.annotation.*; /** * An informative annotation type used to indicate that an interface * type declaration is intended to be a <i>functional interface</i> as * defined by the Java Language Specificat

Effective Java 第三版——42.lambda表达式优于匿名类

Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将近8年的时间,但随着Java 6,7,8,甚至9的发布,Java语言发生了深刻的变化. 在这里第一时间翻译成中文版.供大家学习分享之用. 42.lambda表达式优于匿名类 在Java 8中,添加了函数式接口,lambda表达式和方法引用,以便更容易地创建函数对象. Stream API随着其他语言的修改一同