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内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客.在这篇博客中你可以了解到匿名内部类的使用.匿名内部类要注意 ...
随机推荐
- BNU 34974 MATLAB大法好
题目链接:http://www.bnuoj.com/bnuoj/problem_show.php?pid=34974 MATLAB大法好 Time Limit: 8000ms Memory Limi ...
- localStorage 以及UserData[IE6 IE7]使用
说在前头: UserData:属于IE6 IE7的老东西.麻烦且体验差,暂且不表 localStorage 属于HTML5的东西,兼容IE8以及其它W3C标准的主流浏览器.所以尽可能的具体解说 注意: ...
- bzoj 2120 数颜色 题解
转载请注明:http://blog.csdn.net/jiangshibiao/article/details/23990489 [原题] 2120: 数颜色 Time Limit: 6 Sec M ...
- 使用ssh过程中对数据库进行update时报错
报错信息:org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in ...
- 烦人的Facebook分享授权
开发端授权app权限 facebook要求提交应用到他们平台, 并且还限制100mb, 坑爹死了, 果断使用google drive分享给他们, 最開始不确定分享给他们什么样的程序包, 结果审核没通过 ...
- how to backup and restore database of SQL Server
Back up 1,右键选中需要备份的数据库,Tasks-->Backup 2.General中,Destination,先remove掉之前的,然后再Add 需要注意的是,add的文件,必须要 ...
- js插件---图片裁剪photoClip
js插件---图片裁剪photoClip 一.总结 一句话总结:页面裁剪图片得到base64格式的图片数据,然后把这个数据通过ajax上传给服务器,服务器将base64图片数据解析成图片并且保存到服务 ...
- 【Uva 1625】Color Length
[Link]: [Description] 给你两个序列,都由大写字母组成; 每次,把两个序列中的一个的开头字母加在字符串的尾端,然后在那个序列中删掉那个开头字母; 最后得到一个字符串; 这个字符串显 ...
- C# async/await异步编程深入理解
异步函数简介 一般指 async 修饰符声明得.可包含await表达式得方法或匿名函数. 声明方式 异步方法的声明语法与其他方法完全一样, 只是需要包含 async 关键字.async可以出现在返回值 ...
- Junit4.x高级使用方法具体解释(一)
近期整理代码的时候,总习惯把一些经常使用的工具类和方法等都写在junit中,这样能够方便于在想用的时候直接copy,在用junit的时候学到了一些比較实用的东西.记录例如以下: 1.使用junit进行 ...







