java – 声明匿名内部类
发布时间:2020-12-15 05:05:51 所属栏目:Java 来源:网络整理
导读:rb.addActionListener(new ActionEvent(ae) { public void actionPerformed(ActionEvent ae) { nowCall(ae); }}); 其他方式 Thread th=new Thread(Runnable r) { public void run() { // do something }};// notice the ending of above 2 snippets 看到这两
rb.addActionListener(new ActionEvent(ae) { public void actionPerformed(ActionEvent ae) { nowCall(ae); } }); 其他方式 Thread th=new Thread(Runnable r) { public void run() { // do something } }; // notice the ending of above 2 snippets 看到这两个,我真的很困惑.似乎没有确切的模式来声明一个匿名的内部类. 请解释匿名内部类的语法. 解决方法
第二个是无效的,据我所知和测试.
更常见的是创建一个新的Runnable实现: Thread th=new Thread(new Runnable() { @Override public void run() { // This implements Runnable.run } }); 现在你可以覆盖普通线程的run方法: Thread th=new Thread() { @Override public void run() { // This overrides Thread.run } }; …但我个人更喜欢在创建线程时单独指定Runnable. 现在你在最后注意到的区别仅在于表达式是否用作参数(例如,用于addActionListener方法或Thread(Runnable)构造函数,或者它是否只是直接赋值给变量.想想全新的TypeName( ){…}作为单个表达式,它只是区别: Thread th = expression; 和 Thread th = new Runnable(expression); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读