Java中的四种内部类

yunomiao 2011-08-04 02:46:51
Java中有四种内部类:静态内部类,成员内部类,局部内部类和匿名内部类。
这四种内部类有什么作用呢?什么时候会使用?
希望大虾们指教一二,不胜感激......
...全文
330 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
飓风zj 2011-08-10
  • 打赏
  • 举报
回复
去google吧 这是到面试题
yunomiao 2011-08-10
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 zhouyuqwert 的回复:]
引用 6 楼 yunomiao 的回复:

谢谢各位的回答,今天看到这么多人的回帖,本来好困的,突然不想睡午觉了,哈哈...
真的好开心......

楼主很可爱。。。来回答别人问题会更让你开心

引用 9 楼 yunomiao 的回复:

引用 8 楼 pittzhangswing 的回复:
引用 7 楼 x19881216 的回复:

引用 5 楼 softroad 的……
[/Quote]
谢谢,我也一直努力的去回帖,只是个人能力有限,很多问题回答不了,呵呵
阳明 to life 2011-08-10
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 yunomiao 的回复:]

谢谢各位的回答,今天看到这么多人的回帖,本来好困的,突然不想睡午觉了,哈哈...
真的好开心......
[/Quote]
楼主很可爱。。。来回答别人问题会更让你开心
[Quote=引用 9 楼 yunomiao 的回复:]

引用 8 楼 pittzhangswing 的回复:
引用 7 楼 x19881216 的回复:

引用 5 楼 softroad 的回复:

1 静态内部类,在类里可以直接new
2 成员内部类,new Class().new InnerClass()
3 局部内部类, 不知道啥意思
4 匿名内部类 多用于swing中的事件操作比如java.awt.event 接口 Actio……
[/Quote]
其他几种确实很少用
yunomiao 2011-08-10
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 pittzhangswing 的回复:]
引用 7 楼 x19881216 的回复:

引用 5 楼 softroad 的回复:

1 静态内部类,在类里可以直接new
2 成员内部类,new Class().new InnerClass()
3 局部内部类, 不知道啥意思
4 匿名内部类 多用于swing中的事件操作比如java.awt.event 接口 ActionListener
new ActionListener……
[/Quote]
有想法的都可以说嘛,之前学习了一下这四种内部类
只是到现在好像除了匿名内部类外就一直没见其他的用过
皮特张 2011-08-10
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 x19881216 的回复:]

引用 5 楼 softroad 的回复:

1 静态内部类,在类里可以直接new
2 成员内部类,new Class().new InnerClass()
3 局部内部类, 不知道啥意思
4 匿名内部类 多用于swing中的事件操作比如java.awt.event 接口 ActionListener
new ActionListener() {
public void action……
[/Quote]你们都说完了,我说神马呀。呜呜。。。
小绵羊 2011-08-10
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 softroad 的回复:]

1 静态内部类,在类里可以直接new
2 成员内部类,new Class().new InnerClass()
3 局部内部类, 不知道啥意思
4 匿名内部类 多用于swing中的事件操作比如java.awt.event 接口 ActionListener
new ActionListener() {
public void actionPerformed(ActionEven……
[/Quote]
局部内部类,定义在方法里面的内部类
yunomiao 2011-08-10
  • 打赏
  • 举报
回复
谢谢各位的回答,今天看到这么多人的回帖,本来好困的,突然不想睡午觉了,哈哈...
真的好开心......
softroad 2011-08-09
  • 打赏
  • 举报
回复
1 静态内部类,在类里可以直接new
2 成员内部类,new Class().new InnerClass()
3 局部内部类, 不知道啥意思
4 匿名内部类 多用于swing中的事件操作比如java.awt.event 接口 ActionListener
new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
}
子非 2011-08-09
  • 打赏
  • 举报
回复
内部类在android里会经常用到,java 一些程序做监控的时候应该经常用这些吧,内部类是java里闭包的一种体现,内部类隐含了一个指向外部类的引用,所以可以访问外部类的所有成员,静态内部类由于static原因不能访问外部类所有成员,能访问部分;匿名内部类实现了接口,可以实现多继承,局部内部类就是作用域不一样吧……不知道说的对不对,给你参考一下吧……

thinking in java里有很详细的说明,在第10章。
mopishv0 2011-08-09
  • 打赏
  • 举报
回复
静态内部类 参考MAP.ENTRY
一般用于和外部类紧密耦合的数据结构或类的封装 但其对象可以脱离外部类单独存在
比如 汽车和轮子
成员内部类
与静态内部类相似 但其对象不能脱离外部类单独存在
比如 人和人的胳膊

局部内部类
用于局部封装的类 一般在一个方法块中多次使用 但方法块外从未出现

匿名内部类
不需要类名的类 也就是说只new一次的类 比如UI中按钮监听类 或者创建轮询线程
wenjie4892543 2011-08-09
  • 打赏
  • 举报
回复
上面 的基本 很少用!!静态内部类,成员内部类 也是不常用的。。
yunomiao 2011-08-09
  • 打赏
  • 举报
回复
第一次发帖,竟然没人回答啊......悲哀......

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧