我有按钮,我想做这样的事情:
Button b=new Button(){public int a;};
b.a=5;
如何在 java 中执行此操作?
最佳答案
如果不扩展类,就无法将变量添加到类中。但是,不需要命名扩展类:您可以改用匿名类,其方式类似于您帖子中的片段。
然而,诀窍是在添加变量后访问它:您可以通过改变从类中引用的对象来实现,如下所示:
// Prepare a mutable object for use in your class
final AtomicInteger a = new AtomicInteger(123);
Button b = new Button(){
public void someMethod() {
...
int n = a.intValue();
...
}
};
当您以这种方式进行设置时, 的匿名子类的
类。someMethod()
可以访问方法中 a
状态的更改按钮
关于java - 添加新变量而不扩展类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28891334/