java匿名内部类使用场景列举
|
示例一:
package com;
interface Operation {
示例二:
public interface LinkBuilder {
示例三: 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
| 返回顶楼 |
|
|
发表时间:2011-11-19
刚好也不是太了解什么场景下应该使用匿名内部类,正好可以学习下,加深一下了解!
|
| 返回顶楼 | |
|
发表时间:2011-11-21 最后修改:2011-11-21
在java8出来之前,内部类最本质的作用是可以访问外部对象的状态和外部方法的final变量。换言之,模拟闭包。
其它特性都是单纯节省代码量,只有这个作用是暂时无法替代的。 |
| 返回顶楼 | |
|
发表时间:2011-11-21
如果看一下,SWING的各中事件管理,你就OK了
|
| 返回顶楼 | |
|
发表时间:2011-11-21
kidneyball 写道
在java8出来之前,内部类最本质的作用是可以访问外部对象的状态和外部方法的final变量。换言之,模拟闭包。
其它特性都是单纯节省代码量,只有这个作用是暂时无法替代的。
|
| 返回顶楼 | |
|
发表时间:2011-11-21
lz给出的第一个实例,是回调的使用
第二个实例,是事件监听机制的使用。 可多看看基于事件监听的框架就明白怎么使用了。 另外,可考虑在只会使用到一次,并且逻辑不复杂的地方使用。 |
| 返回顶楼 | |
|
发表时间:2011-11-21 最后修改:2011-11-21
kidneyball 写道
在java8出来之前,内部类最本质的作用是可以访问外部对象的状态和外部方法的final变量。换言之,模拟闭包。
其它特性都是单纯节省代码量,只有这个作用是暂时无法替代的。 +1 说得很简洁,一语中的。偶像啊。 |
| 返回顶楼 | |
|
发表时间:2011-11-21
java的集合使用了private的Iterator类.这样可以保证你只能获取iterator()方法返回的iterator接口,而无法得到具体实现类
|
| 返回顶楼 | |
|
发表时间:2011-11-21
kidneyball 写道
在java8出来之前,内部类最本质的作用是可以访问外部对象的状态和外部方法的final变量。换言之,模拟闭包。
其它特性都是单纯节省代码量,只有这个作用是暂时无法替代的。 嗯,还有一种作用,private的static内部类提供了一种“类私有”的可见性,而private的非static内部类提供了“对象私有”的可见性,这也是暂时在java里没有替代方案的(scala里就有)。 |
| 返回顶楼 | |
|
发表时间:2011-11-22
kidneyball 写道
kidneyball 写道
在java8出来之前,内部类最本质的作用是可以访问外部对象的状态和外部方法的final变量。换言之,模拟闭包。
其它特性都是单纯节省代码量,只有这个作用是暂时无法替代的。 嗯,还有一种作用,private的static内部类提供了一种“类私有”的可见性,而private的非static内部类提供了“对象私有”的可见性,这也是暂时在java里没有替代方案的(scala里就有)。 弱弱的问一句,final变量的访问跟匿名内部类有什么关系? |
java匿名内部类使用场景列举的更多相关文章
- #随笔之java匿名内部类
随笔之java匿名内部类 从今天起开始每日一篇技术博客,当然这只是我当天所学的一些随笔,里面或多或少会有理解不当的地方,希望大家多多指教,一起进步! 在讲匿名内部类之前,先讲讲内部类的一些概念. 1. ...
- 【50】java 匿名内部类剖析
匿名内部类介绍: 匿名内部类也就是没有名字的内部类 正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写 但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口 匿名内部类的声明 ...
- 为什么Java匿名内部类访问的外部局部变量或参数需要被final修饰
大部分时候,类被定义成一个独立的程序单元.在某些情况下,也会把一个类放在另一个类的内部定义,这个定义在其他类内部的类就被称为内部类,包含内部类的类也被称为外部类. class Outer { priv ...
- Java内部类使用场景和作用
一.Java内部类的分类 Java内部类一般包括四种:成员内部类.局部内部类.匿名内部类和静态内部类 大多数业务需求,不使用内部类都可以解决,那为什么Java还要设计内部类呢. 二.内部类的使用场景 ...
- 细谈 Java 匿名内部类 【分别 使用 接口 和 抽象类实现】
1.前言 匿名内部类是什么东西? 没有名字的内部类就是匿名内部类. 什么场景使用? 匿名内部类适合创建那种只需要一次使用的类. 这是个很有用的东西,可想而知,如果不使用匿名内部类,哪些只需要使用一次的 ...
- Java——匿名内部类
/* * 匿名内部类, 就是内部类的简写形式. * * 必须有前提: * 内部类必须继承或者实现一个外部类或者接口. * 匿名内部类其实就是一个子类对象. * * 格式:new 父类or接 ...
- 从一开始,说出事java匿名内部类
java内部类.匿名类原本以为它们的使用已经很滑, 成绩, 就在昨天晚上12指向时钟发生重大事故.事故的严重程度再说吧,那是因为我没有睡一晚睡眠. 那以下先用一段模拟代码来描写叙述下我出现的问题的: ...
- (转)java匿名内部类详解
原文:http://android.blog.51cto.com/268543/384844/ 内部类是指在一个外部类的内部再定义一个类.类名不需要和文件夹相同. *内部类可以是静态static的 ...
- 【Java学习笔记之二十六】深入理解Java匿名内部类
在[Java学习笔记之二十五]初步认知Java内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客.在这篇博客中你可以了解到匿名内部类的使用.匿名内部类要注意 ...
随机推荐
- 可穿戴KEY带来的身份认证的革命
在用户身份认证方面,PKI体系给出了极好的解决方式.即基于X.509数字证书的用户身份认证.该方法基于非对称公钥算法的难题为用户提供非常安全的认证过程. PKI体系尽管明白要求"私钥必须保密 ...
- sass02
新建一个文件夹 1 cd 进入文件夹 ,cd E:\360data\重要数据\桌面\sass, 2 compass creat hello:当前目录创建sass工程, 3 sass文件夹放置sass文 ...
- Google Summer of Code 2017 经验谈
Google Summer of Code (GSoC) 2018 又要开始了. 如果想实现你心中的开源梦想, 用代码让世界变得更美好. 参加GSoC可能是你进入开源的世界最好途径. GSoC是什么 ...
- BZOJ 1230 Usaco2008 Nov 开关灯 线段树
思路: 用线段树模拟题中的操作就好 (标记异或 长度=区间总长度-当前已开灯的长度) //By SiriusRen #include <cstdio> using namespace st ...
- 负载均衡-lvs
常用的负载均衡技术比较DNS 轮询DNS本身的机制不再赘述,这里主要看一看基于DNS的负载均衡,其大致原理很清楚,DNS系统本身支持同一个域名映射到多个ip (A记录),例如 这样每次向DNS系统询问 ...
- 【理论基础】ContentProvider的简要概述
对于Android应用而言,他们必须相互独立,各自运行在自己的Dalvik虚拟机实例中,如果这些Android应用之间需要实现实时的数据交换——例如我们开发了一个发送短信的程序,当发送短信时需要从联系 ...
- CentOS中实现与Ubuntu下apt-get install build-essential功能类似的命令
CentOS中实现与Ubuntu下apt-get install build-essential功能类似的命令 在Ubuntu中安装完系统后,可以直接使用apt-get install build-e ...
- 实现人脸识别性别之路---网页上的video标签
<video> 元素支持三种视频格式: MP4, WebM, 和 Ogg.但是,不同的浏览器对视频格式的支持也不一致,因此为了让浏览器都适应,我们使用source属性来对视频文件格式定义 ...
- codeforces 140E.New Year Garland
传送门: 解题思路: 要求相邻两行小球颜色集合不同,并且限制行内小球相邻不同. 由此可得:每行小球排列都是独立与外界的, 所以答案应该是对于所有行的颜色集合分类,在将行内的答案乘到上面. 先考虑如何分 ...
- Vue_小练习
<!DOCTYPE html> <html lang='en'> <head> <meta charset='UTF-8'> <meta name ...







