gpt4 book ai didi

java - 如何从没有实例的其他类调用方法?

转载 作者:行者123 更新时间:2023-12-02 07:10:40 26 4
gpt4 key购买 nike

如何从一个类中调用一个方法,该类不是另一个类中的对象,并且与另一个类没有任何共同点?

就我而言:

class GridUI {
com.google.gwt.user.cellview.client.DataGrid grid;

public void refresh() {
dataGrid.redraw();
}
}

class SomeBackendService() {
public foo() {
//have to trigger refresh of a specific grid
}
}

一种可能是使 refresh()grid static。但这是糟糕的设计,我无法使用这种方法,因为我想使用 GridUI 的多个实现。

那么,如何从不包含此网格作为对象的任何服务刷新应用程序中的某个网格类?

最佳答案

只需创建并触发 Event 在您的服务中找到它并让您的网格注册Event 。最好使用 EventBus .

使用静态 Map<String, Grid>正如已接受的答案中所建议的那样,这是可行的,但它是不正确的。您可能会犯错误,而且当网格数量增加时管理起来就不那么容易了。

EventBus这种方法需要更多的前期工作,但最终这是一个更好的方法。您将能够重复使用EventBus整个申请过程中。它确实有助于降低耦合度。您还可以轻松地让不同的对象作用于相同的Event只需很少的努力。

关于java - 如何从没有实例的其他类调用方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15572021/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com