问题标签 [anonymous-inner-class]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
397 浏览

java - 匿名内部类:声明为实例变量与动态创建

我正在重构一个具有面向公众的接口的类,并且考虑到用法让我问:

在一些较大的类(作为实例变量)中声明以下内容有什么区别:

vs 声明为匿名内部类如下(即时):

更具体地说,前者是否仍被视为匿名内部类?我在这个答案中读到一个匿名内部类

是在另一个类的方法体内创建和定义的

我给出的第一个示例是在另一个类的主体中创建和定义的,但不像第二个那样在另一个类的方法中创建和定义。它仍然是一个匿名内部类吗?此外,一个人与另一个人的公认做法是什么?将匿名内部类声明为实例变量(我认为仍然如此)是否更有效,因为不需要重新创建新对象?

0 投票
1 回答
347 浏览

java - External call of SwingWorker custom methods

The code above isn't working, it tells me that getA() (when called in the row before the last) is undefined for SwingWorker.

However, if I make the SwingWorker a separate class, it works without any problems. I may not understand how this works (and I probably don't), but I see no reason making SwingWorker an anonymous inner class would prevent me to call custom methods in it...

Is this even a good idea, or should I make it a separate class? I have no intention of using the SwingWorker anywhere else.

0 投票
3 回答
3914 浏览

java - 如何从匿名类内部访问封闭类实例变量?

如何instance variables从匿名类的方法内部访问?

0 投票
2 回答
156 浏览

java - Java中匿名内部类可访问的变量

我想使用匿名内部类来处理程序中对象的鼠标操作。但是,根据参数,我希望内部类的行为有所不同。例如:

这个想法是,在创建对象时,拖动对象时的行为由其颜色决定。这工作正常,但现在由于某种原因,我收到一个异常,说 c (Color) 为空。我想知道这种方法在Java中是否可行。

0 投票
1 回答
116 浏览

java - 保存匿名内部类中生成的数据

我的程序中有一个 JTextField,我通过使用匿名内部类连接了一个键盘侦听器。侦听器清除文本框并保存当前在其上的单词。

我希望能够在代码的其他部分使用我从中得到的那个词,但我知道内部类中使用的所有变量都必须标记为 final .. 那么我该怎么做呢?

这是我的简化代码给你们一个想法 - 我希望能够使用 userWord

编辑:只是想到可能将它作为构造函数变量传递给我可以创建的另一个对象,然后该对象将能够提取并保存该字符串..这行得通吗?抱歉,如果我在询问后一秒钟就想到了解决方案,那么这个毫无意义的问题,哈哈。

0 投票
2 回答
926 浏览

java - 在 EL 中的匿名内部类 bean 上调用带有参数的方法

如果我有一个像这样的匿名内部类对象(其中 Foo 是一个接口):

我尝试Foo.hello从这样的jsp调用:

它抛出:

但如果没有参数:

...

它工作正常。为什么?

这不是7121303的副本。我专门询问匿名内部类。对于常规类的实例,它可以使用任意数量的参数。

0 投票
2 回答
127 浏览

java - 将外部匿名类 ref 传递给内部匿名类中的方法

java - 如何将外部匿名类引用传递给Java内部匿名类中的方法?

我有一种方法可以对服务器进行异步调用 - sendCall(some_args, callback). 回调由匿名类(我们给它命名OuterAnon)表示,并包含一个失败案例的方法。在此方法中,会创建一个消息框,并sendCall()在每次按下 OK 按钮时调用该消息框。所以我需要OuterAnon再次传递给该方法。

这是一个代码来演示我的意思:

正如您所注意到的,我在这里为回调提供了一个参考:

并在这里使用它:

但我想避免创建引用并传递回调,例如:

有没有办法在Java中做到这一点?

0 投票
1 回答
2499 浏览

javafx - javafx 匿名应用程序类

我习惯了 Swing,正在探索 javafx。在摇摆中,我将创建一个扩展 Jpanel 的类,然后能够使用该类中创建 JFrame 的几行代码来测试该类。

因此,在 javafx 中,我认为我可以扩展 Scene 或 Group,然后能够在 main 中创建一个匿名 Application 类,但是失败了:

线程“main”java.lang.RuntimeException 中的异常:错误:类 test.Test 不是 javafx.application.Application.launch(Application.java:211) at test.Test.main(测试.java:59)

我不想继承 Application 因为我想为很多场景/组遵循这种模式,并且只能有一个 Application 对象。

当这不起作用时,我想我可以编写一个简单的类来扩展应用程序,然后根据提供的参数,使用反射来创建我的场景,但这也不起作用,因为场景没有默认构造函数。 . Group 有一个默认的构造函数,所以也许我需要继承它而不是 Scene?

必须有办法做到这一点......这一直是测试和单个类的java 101方式。有没有人这样做过?关于如何完成我在这里尝试做的任何想法或想法?

java 版本“1.7.0_21”
Java(TM) SE 运行时环境(内部版本 1.7.0_21-b11)
Java HotSpot(TM) 64 位服务器 VM(内部版本 23.21-b01,混合模式)

这是我的代码:

0 投票
2 回答
76 浏览

java - 接口作为方法的参数

我在命名以下情况时遇到问题

它与以下内容相同:

怎么称呼?

0 投票
1 回答
1030 浏览

java - java中匿名内部类的使用

SampleBehaviour是一个接口。

实现接口的类必须定义方法行为,接口中的一些变量有什么用?

为什么方法参数需要是final的?我没有得到这种类型的使用的一些实时应用程序?这背后的真实情况是什么?

如果它有用,为什么 C++ 没有这样的东西?