【发布时间】:2021-05-07 19:04:04
【问题描述】:
我可以这样做吗?
public class Test {
public int a = 5;
public int b = 10;
public void change() {
this.a += 1;
this.b += 1;
}
}
Test test1 = new Test();
Test test2 = new Test();
test.valueChanged((a, b) -> {
System.out.println(a + b);
});
test2.valueChanged((a, b) -> {
System.out.println(a - b);
};
test1.change();
// System.out.println: 17
test2.change();
// System.out.println: -5
我希望有在值更改时调用的函数。
我将创建更多次Test,我也希望创建不同的valueChanged。
【问题讨论】:
-
每当哪个值发生变化?你的意思是每当
change()被调用时? -
这能回答你的问题吗? How to create change listener for variable?
-
如果你用 getter/setter 包装你的 "a" 和 "b" 字段而不是直接访问它们,你可以在 setter 中挂上一个额外的逻辑,这个 setter 会打印新值,它对你有用吗?
-
@AndyTurner 每当
change()被调用时。 -
在
change()中的某处添加对您想要的方法的调用。
标签: java