jinzhongyuan
V2EX  ›  Java

为什么 feign 的源码喜欢一个类文件里面 好多内部类?

  •  
  •   jinzhongyuan · May 13, 2020 · 3297 views
    This topic created in 2237 days ago, the information mentioned may be changed or developed.

    看了好累

    11 replies    2020-05-13 20:42:55 +08:00
    zoharSoul
        1
    zoharSoul  
       May 13, 2020   ❤️ 1
    你就当他没 class
    全是 function 不就好了
    xinQing
        2
    xinQing  
       May 13, 2020
    因为是内部类哇
    jinzhongyuan
        3
    jinzhongyuan  
    OP
       May 13, 2020
    @xinQing 额,我的意思定义在里面看起来好麻烦
    hantsy
        4
    hantsy  
       May 13, 2020
    太正常了,如果不暴露给外面调用,用单独文件干嘛 。
    如果你看 Scala,Kotlin 应用代码不是想撞死。

    @xinQing 不一定是内部类。用过 Kotlin 后,我也喜欢这么写,https://github.com/hantsy/angular-spring-reactive-sample/blob/master/server/src/main/java/com/example/demo/Application.java
    https://github.com/hantsy/angular-spring-reactive-sample/blob/master/server/src/main/java/com/example/demo/RestExceptionHandler.java


    Java 一个文件里只有一个 Public 类(与文件名一致),但可以包含多个类,其他的可见性都是 Package 。不过这也会成为过去式了,Java 以后也和 Scala 一样,允许多个 Public 类放同一个文件,类名与文件可以不一致。
    hantsy
        5
    hantsy  
       May 13, 2020
    安卓的官方教程里也有这种写法,文件太多反而维护看起来麻烦。
    hantsy
        6
    hantsy  
       May 13, 2020
    真正内部类只当它是 Public 类的一个属性就好了。
    xinQing
        7
    xinQing  
       May 13, 2020
    都是有个平衡点的,写一起,代码太多看起来也不舒服;分开后又很多文件,每个才几行代码。公司里面更喜欢分开,团队人多,都改同一个文件冲突太频繁了。这种事情不纠结,自己团队习惯就行
    jinzhongyuan
        8
    jinzhongyuan  
    OP
       May 13, 2020
    @hantsy 大佬 reactive 玩起来了
    jinzhongyuan
        9
    jinzhongyuan  
    OP
       May 13, 2020
    @xinQing 嗯嗯
    namelosw
        10
    namelosw  
       May 13, 2020
    因为 Java 没有顶层函数。
    luckyrayyy
        11
    luckyrayyy  
       May 13, 2020
    @hantsy 请问你说的这个“以后”是指什么时候?是有提上某个版本的开发计划了吗?之前没听说过这种变动
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2793 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 12:20 · PVG 20:20 · LAX 05:20 · JFK 08:20
    ♥ Do have faith in what you're doing.