博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Lambda为什么又称为匿名函数
阅读量:7153 次
发布时间:2019-06-29

本文共 565 字,大约阅读时间需要 1 分钟。

 

 

 

用法:

有的类,里面只有一个方法,几行代码,只使用一次,以后再不会用到这个类,那就不值当的单独创建一个类,此时使用匿名内部类

 

 

一、传统方式

1、接口

 

 2、接口实现类

 创建一个类,这个类可能被多次使用,被new多次,这个类相当于一个模板

 

3、创建接口实现类实例,调用其sum()方法

 

 

 二、匿名内部类方式

1、接口

 

2、不需要再创建那个接口的实现类,直接把实现类的主体代码拿过来(类的花括号里面的全部)

 

 

 

在使用匿名内部类时,要记住以下几个原则:

·匿名内部类不能有构造方法。
·匿名内部类不能定义任何静态成员、方法和类。
·匿名内部类不能是public,protected,private,static。
·只能创建匿名内部类的一个实例。
·一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类。
·因匿名内部类为局部内部类,所以局部内部类的所有限制都对其生效。

 

举例:用匿名内部类创建多线程

实现 Runnable接口方式:

new Thread(new Runnable() {public void run() {//do something};}) { }.start();

  

 

 三、Lambda表达式

 

转载于:https://www.cnblogs.com/Donnnnnn/p/10512757.html

你可能感兴趣的文章
项目中最常用到的颜色
查看>>
[转]10个学习Android开发的网站推荐
查看>>
【linux驱动分析】之dm9000驱动分析(六):dm9000_init和dm9000_probe的实现
查看>>
交大人在各行各业一直不懈追逐着自己的创业梦想,如携程网、
查看>>
CI框架 -- 开发环境、生产环境
查看>>
命令行解析器
查看>>
Aqua Data Studio 查询结果中文乱码
查看>>
2016第21周三问题记录
查看>>
页面中多个script块之间的关系
查看>>
软件开发过程模型
查看>>
CloudFlare Support - Error 522: Connection timed out 错误522:连接超时
查看>>
Maven项目环境搭建实例.
查看>>
Atitit.信息论原理概论attilax总结
查看>>
Openfire 的安装和配置
查看>>
好,开始没做出来 guess-number-higher-or-lower-ii
查看>>
[LeetCode] Find Right Interval 找右区间
查看>>
android View 绘制完成监听
查看>>
igbinary vs serialize vs json_encode
查看>>
禅与摩托车维修的艺术
查看>>
TestNG的简单使用
查看>>