【发布时间】:2020-07-28 10:15:04
【问题描述】:
我想在匿名类中定义我的属性和函数
ExistingExtendableJavaClass aClass = new ExistingExtendableJavaClass() {
public String someProperty;
public String getMyProperty() { return someProperty }
});
但是这些调用不起作用
aClass.someProperty // not accessible
aClass.getMyProperty() // not accessible
我知道是因为ExistingExtendableJavaClass 没有这些,但我的匿名用户有这些。我怎样才能做到这一点?
【问题讨论】:
-
您能否详细说明一下为什么您需要这样?我首先想到的是用这些属性和方法定义一个接口,并将你的对象转换为它。
-
因为在一个类里面定义了一个匿名的。这个匿名类使用外部类的成员来做很多事情。现在外部类需要一个功能来知道匿名类中的函数是否被调用。可以有很多解决方案,我通过在外部类中定义属性并将它们设置为匿名类中的值来解决这个问题。但是@rzwitserloot 对我来说看起来不错。
标签: java anonymous-types