tctc4869
V2EX  ›  Java

Java 怎么较好的拆分类文件?

  •  
  •   tctc4869 · May 20, 2020 · 2530 views
    This topic created in 2367 days ago, the information mentioned may be changed or developed.

    java 有能像 c#的部分类,但运行编译时是看成一个类的这类拆分方式,不知道 java 现在更新了类似的功能没有,不过除了这个拆分方式还有其他的方式么?

    我指的是业务类代码拆分,工具类代码的拆分就不用说了

    TtTtTtT
    TtTtTtT
    May 20, 2020
    1
    灵活使用 Java8 interface default method 可以实现这一点。。
    tctc4869
    tctc4869
    OP
    May 20, 2020
    2
    @TtTtTtT
    Java8 interface default method,用在业务代码上?
    tctc4869
    tctc4869
    OP
    May 20, 2020
    3
    @TtTtTtT 有个问题,如果是 Controller 类的话,拆分怎么办?
    james122333
    james122333
    May 20, 2020
    4
    放弃 java 吧 (滑稽)
    TtTtTtT
    TtTtTtT
    May 20, 2020
    5
    举个例子吧:

    interface CommonController<T> {
    Dao<T> getDao();

    @RequestMapping(value = "/",method = RequestMethod.GET)
    default List<T> get() {
    return getDao().getList();
    }
    }

    @RequestMapping("/user")
    class UserController implements CommmonController<User> {
    @Getter
    private Dao<User> dao;
    }
    ConradG
    ConradG
    May 20, 2020
    6
    java 目前不直接提供这种方式。
    间接方式之一是从头继承到尾。

    不过 spring mvc 的 controller 不存在这个问题,同一个类级的 @RequestMapping 可以在多个 controller 里使用。
    james122333
    james122333
    May 20, 2020
    7
    人生就不该浪费在底层乱七八糟的语言上
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1583 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 16:29 · PVG 00:29 · LAX 08:29 · JFK 11:29
    ♥ Do have faith in what you're doing.