public class A {
int i = 1 ;
public A() {
Thread thread = new Thread() {
public void run() {
for (;;) {
A. this .run();
try {
sleep( 1000 );
} catch (InterruptedException ie) {
}
}
}
};
thread.start();
}
public void run() {
System.out.println( " i = " + i);
i ++ ;
}
public static void main(String[] args) throws Exception {
new A();
}
}
Thread thread = new Thread(){.........} 这实际上继承Thread类,生成了一个匿名内部类;
匿名内部类即可以通过接口扩展的创建,也可以通过继承其他类来创建;
匿名内部类可以实现回调,回调是java事件驱动机制的基础..........
曾经有一个文章中写道这样的话,我认为回答问题的人没有理解问题,所答非所问.我觉得他的回答是错误的,不知道我的看法对不对,请大家指教!!!
如下:
Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
匿名的内部类是没有名字的内部类。不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现。
我觉得答案应该是:可以,可以.都是可以的.
int i = 1 ;
public A() {
Thread thread = new Thread() {
public void run() {
for (;;) {
A. this .run();
try {
sleep( 1000 );
} catch (InterruptedException ie) {
}
}
}
};
thread.start();
}
public void run() {
System.out.println( " i = " + i);
i ++ ;
}
public static void main(String[] args) throws Exception {
new A();
}
}
Thread thread = new Thread(){.........} 这实际上继承Thread类,生成了一个匿名内部类;
匿名内部类即可以通过接口扩展的创建,也可以通过继承其他类来创建;
匿名内部类可以实现回调,回调是java事件驱动机制的基础..........
曾经有一个文章中写道这样的话,我认为回答问题的人没有理解问题,所答非所问.我觉得他的回答是错误的,不知道我的看法对不对,请大家指教!!!
如下:
Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
匿名的内部类是没有名字的内部类。不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现。
我觉得答案应该是:可以,可以.都是可以的.