V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Freeego
V2EX  ›  程序员

Java 后端返回的 data 类型应该用泛型还是 Object?

  •  
  •   Freeego · Jan 8, 2020 · 4117 views
    This topic created in 2301 days ago, the information mentioned may be changed or developed.

    以下哪种合适:

      public class CommenResult<T> {
          private int code;
          private String message;
          private T data;
          ...
      }
    

    还是

      public class CommenResult {
          private int code;
          private String message;
          private Object data;
          ...
      }
    
    14 replies    2020-01-08 19:07:03 +08:00
    Akimizu1994
        1
    Akimizu1994  
       Jan 8, 2020
    泛型吧,至少别人一看接口定义就知道你返回的是个啥
    zhouquan03
        2
    zhouquan03  
       Jan 8, 2020
    范型。接口一定要明确类型,object 不合适。
    chenuu
        3
    chenuu  
       Jan 8, 2020
    之前没有考虑泛型,实际应用上选的 Object.现在看更倾向于泛型
    avk458
        4
    avk458  
       Jan 8, 2020
    1. 泛型的作用是在编译期;
    2. 通用返回类还需要泛型感觉多此一举;
    3. common
    Freeego
        5
    Freeego  
    OP
       Jan 8, 2020
    @avk458 盲生你发现了华点
    opengps
        6
    opengps  
       Jan 8, 2020
    我选第二种
    wysnylc
        7
    wysnylc  
       Jan 8, 2020
    选泛型没法初始化 data,而响应结果需要一个默认的值,所以我选 Object
    BBCCBB
        8
    BBCCBB  
       Jan 8, 2020
    泛型. 方法一眼就能看到返回了啥类型.
    chendy
        9
    chendy  
       Jan 8, 2020
    两种写法最终效果一样,但是用泛型的话,看方法声明就知道接口返回了啥,提高可读性,有助于后期维护
    glaucus
        10
    glaucus  
       Jan 8, 2020
    感觉规范上当然是泛型,但是只作为序列化的返回类在我的实际体验下 Object 更方便。。。
    br00k
        11
    br00k  
       Jan 8, 2020 via iPhone
    建议泛型,参考 ResponseEntity
    cheng6563
        12
    cheng6563  
       Jan 8, 2020 via Android
    泛型,给 swagger 还能自动出类型
    lihongjie0209
        13
    lihongjie0209  
       Jan 8, 2020
    其实吧, 序列化之后就无所谓了, 除非你要做静态代码分析
    Yuicon
        14
    Yuicon  
       Jan 8, 2020
    泛型,就像口渴了喝水一样自然
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3854 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 70ms · UTC 00:46 · PVG 08:46 · LAX 17:46 · JFK 20:46
    ♥ Do have faith in what you're doing.