接口可以这么用!!!

tp30512kuang 2011-12-17 03:32:24
刚在API上看到这个
..接口可以这样?求解

Runnable doHelloWorld = new Runnable() {
public void run() {
System.out.println("Hello World on " + Thread.currentThread());
}
};

...全文
85 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
心亦 2011-12-17
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 taowencong2012 的回复:]
看来LZ的技术也不怎么样,不如加入java爱好群 46918907
一同进步吧
[/Quote]
呵呵,有这样说话的吗?
gmemai 2011-12-17
  • 打赏
  • 举报
回复
匿名内部类
taowencong2012 2011-12-17
  • 打赏
  • 举报
回复
看来LZ的技术也不怎么样,不如加入java爱好群 46918907
一同进步吧
algona 2011-12-17
  • 打赏
  • 举报
回复
很不幸,可以这样
denvilliyankai 2011-12-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wangfeiwoyun 的回复:]

匿名内部类,这样不只是接口可以这么用,所有非final的java 类都可以。
你可以这么理解:你定义了一个类X,
class X implements Runnable { ... };
然后调用了他的构造方法 new X();
Runnable doHelloWorld = new Runnable() { ... } 你把它当成上面两部的合体。 :)
详细解释你可是看Java ……
[/Quote]

1楼正解
taowencong2012 2011-12-17
  • 打赏
  • 举报
回复
内部匿名类
jiakai0419 2011-12-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wangfeiwoyun 的回复:]

匿名内部类,这样不只是接口可以这么用,所有非final的java 类都可以。
你可以这么理解:你定义了一个类X,
class X implements Runnable { ... };
然后调用了他的构造方法 new X();
Runnable doHelloWorld = new Runnable() { ... } 你把它当成上面两部的合体。 :)
详细解释你可是看Java ……
[/Quote]

+1
wangfeiwoyun 2011-12-17
  • 打赏
  • 举报
回复
匿名内部类,这样不只是接口可以这么用,所有非final的java 类都可以。
你可以这么理解:你定义了一个类X,
class X implements Runnable { ... };
然后调用了他的构造方法 new X();
Runnable doHelloWorld = new Runnable() { ... } 你把它当成上面两部的合体。 :)
详细解释你可是看Java Language Specification 15.9.5.1 Anonymous Constructors
点这里下载第3版
点这里下载Java 7版

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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