| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY 
共有 407 人关注过本帖
标题:匿名内部类具体是指什么??看书越看越糊涂!!
收藏  订阅  推荐  打印 
george_vcool
Rank: 3Rank: 3
等级:中级会员
威望:3
帖子:447
积分:4618
注册:2007-7-23
匿名内部类具体是指什么??看书越看越糊涂!!

如题,请教了??

搜索更多相关主题的帖子: 部类  糊涂  匿名  看书  
2007-7-24 22:56
狂放不羁
Rank: 12Rank: 12Rank: 12
等级:贵宾
威望:12
帖子:926
积分:9436
注册:2007-1-24

匿名内部就是没有名字的类,表面是你是看不到构造函数的。。底曾其实是创建了实现了接口的一个子类。。
2007-7-24 23:07
pity1115
Rank: 2
等级:注册会员
威望:2
帖子:184
积分:1970
注册:2006-9-15

匿名内部类在GUI中用的比较多,
JButton button=new JButton("Test");
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
System.out.println("test");
}
}
);
红色部分就是匿名内部类。它与下面这个是等价的。
button.addActionListener(new buttonListener());

private class buttonListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
System.out.println("test");
}
}

[此贴子已经被作者于2007-7-24 23:26:41编辑过]


2007-7-24 23:23
liguoshi1984
Rank: 2
等级:注册会员
帖子:89
积分:992
注册:2007-7-4

匿名类有三个特点.
一,它没有自己的名字,它继承了另外一个类,用父类的名字作为自己的名字.
二,它定义的时候就是创建的时候,创建的时候就是定义的时候,它们是一起的.
三,事实上,你就把它当成一个对象得了,只要对象能存在的地方它就能存在.
为了验证第三点,我特地编了个例子:
[CODE]class A
{ int a=1000;
public void call()
{int i=2000;
System.out.print("我是老爸我怕谁"+i);
}
}
class Main
{
public static void main(String[] args)
{
new A(){
public void call()
{
int i=3000;
System.out.printf("我是儿子,a=%d,i=%d",a,i);
}
}.call();
}
}[/CODE]输出:
我是儿子,a=1000,i=3000

2007-7-25 16:17
jdk2006
Rank: 3Rank: 3
等级:中级会员
帖子:239
积分:2604
注册:2007-5-12

4楼讲得比较好!收藏....

2007-7-29 02:03
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.050955 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved