recherche

Maison  >  Questions et réponses  >  le corps du texte

java - 这个泛型方法应该怎么写才对

我是C#转Java的,发觉Java的泛型写起来有点奇怪,求助,下面这个问题应该如何解决。

定义的方法:

public static <T> T FromJson(String json)
{
    T obj = JSON.parseObject(json, new TypeReference<T>() {});
    return obj;
}

使用的时候报错

MyClass cls2 = JsonClass.FromJson<MyClass>(str);

提示是<MyClass>这个地方错误,如果删掉,就语法上正确,但是实际运行会错误。
我是按照C#逻辑来理解些的,貌似Java不是这么一回事?

伊谢尔伦伊谢尔伦2888 Il y a quelques jours754

répondre à tous(3)je répondrai

  • PHP中文网

    PHP中文网2017-04-18 09:18:34

    // 泛型方法要么直接让其推导类型
    MyClass cls2 = JsonClass.FromJson(str);
    
    // 要么这样指定
    MyClass cls2 = JsonClass.<MyClass>FromJson(str);

    Votre erreur de compilation est donc due au fait que vous l'utilisez de la mauvaise manière.

    Quand vous obtenez une erreur lors de l'exécution, vous devez publier le message d'erreur pour voir ce qui ne va pas.

    répondre
    0
  • PHP中文网

    PHP中文网2017-04-18 09:18:34

    Vous n'avez pas besoin de spécifier de génériques lors de l'utilisation de la méthode

    MyClass cls2 = JsonClass.FromJson(str);

    répondre
    0
  • 怪我咯

    怪我咯2017-04-18 09:18:34

    public static <T> T FromJson(String json,Class<T> clz)
    {
        return JSON.parseObject(json, new TypeReference<T>() {});
    }
    

    Je ne sais pas si c'est possible

    répondre
    0
  • Annulerrépondre