你是想问匿名类(Anonymous Classes)吧?举一个比较极端的例子:
Thread t = new Thread ( new Runnable ( ) {
public void run() {
System.out.println(getClass().getName());
}
});其中的
Runnable ( ) {
public void run() {
System.out.println(getClass().getName());
}
}
就是一个嵌套声明的匿名类。好处,当然是有时候会令代码显得简洁,至少你不需要为此重新派生一个新的Thread/Runnable子类。像这样:
class MyThread() {
public void run() {
System.out.println(getClass().getName());
}
}如果每一个工程中都取消使用匿名类的话,那这个工程内部的结构一定超乎想象的复杂。这应该算是它的优点吧。但是,它的缺点也应该算是很明显吧。你第一遍的时候有看明白头上的例子了么?尤其是当它不停的引用外部类和父类的成员方法/属性时,将会是一团糟。我相信没有一个程序员愿意读那样的代码。当然,我讲得还不够详细。更多还需要你在实践中自己体会。
Thread t = new Thread ( new Runnable ( ) {
public void run() {
System.out.println(getClass().getName());
}
});其中的
Runnable ( ) {
public void run() {
System.out.println(getClass().getName());
}
}
就是一个嵌套声明的匿名类。好处,当然是有时候会令代码显得简洁,至少你不需要为此重新派生一个新的Thread/Runnable子类。像这样:
class MyThread() {
public void run() {
System.out.println(getClass().getName());
}
}如果每一个工程中都取消使用匿名类的话,那这个工程内部的结构一定超乎想象的复杂。这应该算是它的优点吧。但是,它的缺点也应该算是很明显吧。你第一遍的时候有看明白头上的例子了么?尤其是当它不停的引用外部类和父类的成员方法/属性时,将会是一团糟。我相信没有一个程序员愿意读那样的代码。当然,我讲得还不够详细。更多还需要你在实践中自己体会。
解决方案 »
- 面板
- 关于 Object.wait() 的问题
- Swing界面,想实现一个拖放动作,怎么搞?
- 关于SWT中Table和Tree使用(分不是问题)
- 用utf-8编码(encode)unicode码时不会有信息损失,但禁止用utf-8解码非utf-8编码的字节流。总之Utf-8可以编码任何unicode 码,但只能解码
- 求一算法或想法
- 线程同步问题,不知道如何处理。各位大虾帮忙看一下
- 用APPLET来开发一个网上成绩管理系统,会不会很白痴??
- 请问一个取随机数的问题,即时结帖
- 各位大虾请进,送分哦!!!!!!!!!!!
- 如何让APP发送HTTP请求?
- 请问谁使用过com.l2fprod.gui.plaf.skin.SkinLookAndFeel风格!!!!
匿名函数,我感觉是不是java
中没有匿名函数
{
public static Vector v= null;
public Sample()
{
} static {
v = new Vector();
}
}