l*********s 发帖数: 5409 | 1 get(new Route("/hello") {
@Override
public Object handle(Request request, Response response) {
return "Hello World!";
}
});
get是个函数吧,里面那坨又是啥呢? new object还能带函数声明? |
z*******3 发帖数: 13709 | 2 那一大tuo是匿名类的实现
然后
new一个这个匿名类的对象
然后
在方法中塞入这个对象做参数
这么写你估计就容易懂了
第一步,实现类
class MyRoute(){
@Override...
}
-------------------
第二步,new一个对象出来
Route route = new MyRoute("/hello");
-------------------
第三步,用这个对象
get(route);
所以说匿名类匿名方法这种鬼东西不要随便写
写出来没几个人真心喜欢看的
都是偷懒的把戏 |
M***0 发帖数: 1180 | 3 button.addActionListener(new ActionListener() {
public void actionPerformed
你把以前写了1万遍的new ActionListener都还给你Java老师了 |
t*******e 发帖数: 684 | |
l*********s 发帖数: 5409 | 5 多谢,:-)俺倒是觉得这语法挺好的,颇有异国风情。
【在 z*******3 的大作中提到】 : 那一大tuo是匿名类的实现 : 然后 : new一个这个匿名类的对象 : 然后 : 在方法中塞入这个对象做参数 : 这么写你估计就容易懂了 : 第一步,实现类 : class MyRoute(){ : @Override... : }
|
l*********s 发帖数: 5409 | 6 只会c,以前没见过这么fancy的语法
【在 M***0 的大作中提到】 : button.addActionListener(new ActionListener() { : public void actionPerformed : 你把以前写了1万遍的new ActionListener都还给你Java老师了
|
c*********e 发帖数: 16335 | 7 这个。。。这种东西,连objective c这么古老的语言都有的。
【在 l*********s 的大作中提到】 : 只会c,以前没见过这么fancy的语法
|
p*****2 发帖数: 21240 | 8
这东西比lamda差远了吧?
【在 l*********s 的大作中提到】 : 只会c,以前没见过这么fancy的语法
|
z****e 发帖数: 54598 | 9 但凡是匿名的类和方法我都不推荐使用
哪怕是写ui的时候,我都主张单独命名
这样一来结构清晰,不会一堆代码凑在一起
而且命名本身也提示了别人你在做什么
最后就是,不这样做可以避免使用的变量被final起来
所以我个人对于教科书上到处都是的匿名类很有意见
那帮猪头三压根不懂swing为什么要搞listener这些东西
如果写在一起的话,button和actionlistener直接合并成一个类就好了
还分了做什么
【在 l*********s 的大作中提到】 : 多谢,:-)俺倒是觉得这语法挺好的,颇有异国风情。
|
l*********s 发帖数: 5409 | 10 嗯,不过俺同意米高的看法,如果不是三四行的小东西,匿名类/方法看着挺丑的。
【在 p*****2 的大作中提到】 : : 这东西比lamda差远了吧?
|
|
|
l*********s 发帖数: 5409 | 11 有道理。
【在 z****e 的大作中提到】 : 但凡是匿名的类和方法我都不推荐使用 : 哪怕是写ui的时候,我都主张单独命名 : 这样一来结构清晰,不会一堆代码凑在一起 : 而且命名本身也提示了别人你在做什么 : 最后就是,不这样做可以避免使用的变量被final起来 : 所以我个人对于教科书上到处都是的匿名类很有意见 : 那帮猪头三压根不懂swing为什么要搞listener这些东西 : 如果写在一起的话,button和actionlistener直接合并成一个类就好了 : 还分了做什么
|
d*****l 发帖数: 300 | 12 INNER CLASS在异步编程的时候比比皆是。不可重用的代码都应该用INNER CLASS。
INNER CLASS的使用很灵活也很复杂,三言两语讲不清,有必要系统的学一下。
【在 l*********s 的大作中提到】 : get(new Route("/hello") { : @Override : public Object handle(Request request, Response response) { : return "Hello World!"; : } : }); : get是个函数吧,里面那坨又是啥呢? new object还能带函数声明?
|
p*****2 发帖数: 21240 | 13
一般也就是写几行的吧?
【在 l*********s 的大作中提到】 : 嗯,不过俺同意米高的看法,如果不是三四行的小东西,匿名类/方法看着挺丑的。
|
g**r 发帖数: 3 | |
l*********s 发帖数: 5409 | 15 Yeap!
【在 g**r 的大作中提到】 : is this from M101??
|