0

这是我的界面

public interface OnSendEntityMessageListener {
    public <T> void onSendEntity(Class<T> entityType, T message);
}

当我想使用如下界面时,我收到一个内置错误,例如

AFragment.OnSendEntityMessageListener 类型中的 onSendEntity(Class, T) 方法不适用于参数 (Class, String)

private void SendASampleMessageToParent(Account account) {
      mSendEntity.onSendEntity(Account.class, "Fragment Message. : "+ account.getName());
   }

模态

public class Account {
    String Name;

    public String getName() {
        return Name;
    }

    public void setName(String name) {
        Name = name;
    }
}

感谢您的帮助

4

2 回答 2

3

您已经在界面中message定义了参数。T但是T您的示例中的类型参数在您Account调用时已经绑定到类型

mSendEntity.onSendEntity(Account.class, "Fragment Message. : "+ account.getName());

您可能打算将您的方法声明为

public <T> void onSendEntity(Class<T> entityType, String message);

反而。

于 2013-05-03T11:39:31.567 回答
1

尝试将您的接口方法更改为采用 Class、String:

public interface OnSendEntityMessageListener {
    public <T> void onSendEntity(Class<T> entityType, String message);
}
于 2013-05-03T11:42:32.213 回答