关于动态静态异步回调-GWT的逻辑问题

关于动态静态异步回调-GWT的逻辑问题,gwt,asynchronous,static,Gwt,Asynchronous,Static,我正在尝试测试以下性能提示: 我有5个以上不同的回调,具有不同的结果对象 如何仅在一个静态类中创建动态静态类: public class AsyncCallbacks { private static AsyncCallback<?> callback = null; private AsyncCallbacks(){ } private AsyncCallback<?> createCallback() {

我正在尝试测试以下性能提示:

我有5个以上不同的回调,具有不同的结果对象

如何仅在一个静态类中创建动态静态类:

    public class AsyncCallbacks
{
    private static AsyncCallback<?> callback = null;


    private AsyncCallbacks(){

    }


    private AsyncCallback<?> createCallback() {
          if(callback == null) {

              callback = new AsyncCallback(){

                @Override
                public void onFailure(Throwable caught)
                {
                    // TODO Auto-generated method stub

                }

                @Override
                public void onSuccess(Object result)
                {
                    // TODO Auto-generated method stub

                }

              };



          }
          return callback;
        }






}
公共类异步回调
{
私有静态异步回调=null;
私有异步回调(){
}
私有异步回调createCallback(){
if(回调==null){
callback=new AsyncCallback(){
@凌驾
失败时的公共无效(可丢弃)
{
//TODO自动生成的方法存根
}
@凌驾
成功时公共无效(对象结果)
{
//TODO自动生成的方法存根
}
};
}
返回回调;
}
}
公共类异步实现异步回调{
私有Dto1 Dto1=null;
私有Dto2 Dto2=null;
私有对象结果=null;
@凌驾
失败时的公共无效(可丢弃){
//失败消息
}
@凌驾
成功时公共无效(对象结果){
this.result=结果;
}
公共对象getSuccessObject(){
if(Dto1的结果实例){
dto1=(dto1)结果;
}else if(Dto2的结果实例){
dto2=(dto2)结果;
}
返回结果;
}
}

like callback.onSucces
  public class Asyncs implements AsyncCallback<Object> {

  private Dto1 dto1 = null;
  private Dto2 dto2 = null;

  private Object result = null;

  @Override
  public void onFailure(Throwable caught) {
    // failed message
  }

  @Override
  public void onSuccess(Object result) {
    this.result = result;
  }

  public Object getSuccessObject() {
    if (result instanceof Dto1) {
      dto1 = (Dto1) result;
    } else if (result instanceof Dto2) {
      dto2 = (Dto2) result;
    }
    return result;
  }

}