问题标签 [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.
java - 匿名内部类必须扩展一些超类?
我正在学习 java swing,遇到了匿名内部类的概念。在这个链接上研究了一下之后,我觉得匿名内部类必须始终扩展一些其他类,因为它作为参数传递的方法是预定义的。最多,如果一个方法接受 Object 实例作为参数,只有这样我们才能创建一个匿名的独立内部类。我只是征求你的意见,我是否正确。如果您能提供一些示例,将会很有帮助。提前致谢。
java - jcheckbox 上的 actionListener
我正在尝试将匿名 actionListener 添加到 JCheckBox 中,但在访问要更新值的对象时遇到了一些困难。我不断收到关于非最终版本的错误,然后当我将它们更改为最终版本时,它会抱怨其他事情。
我试图做的是下面(我删除了一些 gui 代码以使其更易于阅读):
java - 如何调用匿名内部类的方法?
我了解此代码不合法:
那么调用 sizzle 方法的方法是什么呢?
java - 如果它们采用不同的最终参数,如何重用javas匿名内部类?
我需要创建构建成本高且需要访问其中的最终变量的匿名内部类型。问题是我需要创建其中的许多,唯一的区别是使用的最终变量不同(对象本身和类型)。
是否有可能以更可重用的方式做到这一点?
一个简单的例子:
我需要同时为不同对象创建昂贵的构建实例,例如 1L、新日期()、“另一个类似的用例”
基本思想是在运行时为具体类的不同序列化实例创建代理,在第一次使用时反序列化这些对象。我做了一个工作示例(底部的链接),但代理创建非常昂贵。
有一个 ProxyFactory 需要一个 MethodHandler 来通过字节码增强创建一个 Proxy 对象。MethodHandler 定义了一个方法
在我的情况下,此方法需要访问包含构建代理的序列化对象的 byte[]。所以我必须创建一个新的 MethodHandler 并为我想要代理的每个对象构建/编译一个新的代理对象。
调用方法在原始对象的每个方法调用之前自动调用,并简单地检查该对象是否已初始化,如果没有则反序列化它。之后,它调用原始对象上的被调用方法。
如果您想查看具体的用例,请看这里:
java - 在定义之前引用匿名内部类
在另一篇文章中,有人告诉我,在使用它的函数“之后”(下)定义一个匿名内部类是错误的。但是,类似下面的内容编译并运行良好:
这方面的官方说法是什么?我的猜测是,既然intComp
是static
,那么当类CompTest
被“加载”时它会被实例化一次(不确定加载是如何发生的,因为只有一个 main 方法并且没有CompTest
构造对象),因此当main()
需要时intComp
,它是可用的不管它在源文件中的哪个位置被实际定义。
即使它确实有效(出于上述原因甚至是不同的原因)......这是不好的做法吗?
java - 枚举编译错误中的java匿名类
我可以解决这个问题,但我无法理解,所以我要求一些解释(也许还有一个更好的问题标题)。
请考虑这一点:
和这个:
当我编写这段代码来定义一个枚举项时:
我得到编译器错误(eclipse自动完成也不起作用):
如果我将 doGet 方法悬停,日食将其显示为如下定义:
在其他地方,悬停将签名正确显示为:
使用参数调用时new TBGProjects()
。
只是改变:
和:
让它工作。但是这里发生了什么?我错过了什么?
java - 实例化通用接口
我有一个界面
我想写一个方法
我收到一个错误
我对Java相当陌生,我敢肯定这是一个简单的错误。我怎么写这个?
java - Java匿名内部类调用静态方法
我在 Eclipse 应用程序中有以下代码:
当我在类 X 中运行方法测试时,我得到以下输出:
开始
我不明白为什么 externalMethod 没有在 Y 类中运行以及为什么控制没有返回到 X 类(它从不打印“完成”或“在 Y 类中”)。
关于为什么 externalMethod 不运行的任何想法?匿名内部类是否不允许在其类外调用静态方法?如果是这样,为什么这段代码会编译?
java - 编译器和运行时系统如何处理 java 中的嵌套类型?
编译器如何知道嵌套类型,例如:
- 嵌套内部类
- 匿名类
- 嵌套接口
.....ETC
需要明确.......
dalvik - Dalvik 可以将匿名内部类转换为 dex 格式吗?
我正在尝试从 xmlbeans-2.6.0.jar 和 xmlbeans-2.3.0.jar 构建 dex 文件。我收到以下错误
我认为 DVM 无法将匿名内部类转换为 .dex 格式。如果有人能对此提供帮助,那将非常有帮助。