Lambda表达式和匿名内部类的异同

 我来答
百度网友b62111d0
2018-04-18 · TA获得超过414个赞
知道小有建树答主
回答量:537
采纳率:88%
帮助的人:151万
展开全部
【Lambda表达式与匿名内部类的 区别】
1.匿名内部类可以为任意接口创建实例——不管有多少个抽象方法,只要匿名内部类实现了所有方法即可。
但是Lambda表达式只能为函数式接口创建实例。
2.匿名内部类可以为抽象类甚至普通类创创建实例,
但lambda表达式只能为函数式接口创建实例。
3.匿名内部类实现的抽象方法体允许调用接口中的默认方法,
但Lambda表达式的代码块不允许调用接口中的默认方法。
【Lambda表达式与匿名内部类的 相同点】
1.Lambda表达式和匿名内部类一样,都可以直接访问"effectively
final"的局部变量,以及外部类的成员变量(包括实力变量和类变量)
2.Lambda表达式创建的对象和匿名内部类创建的对象一样,都可以直接调用从接口中继承的默认方法。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式