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

2020-05-13 15:57:10 +08:00
 jinzhongyuan

看了好累

2531 次点击
所在节点    Java
11 条回复
zoharSoul
2020-05-13 16:24:45 +08:00
你就当他没 class
全是 function 不就好了
xinQing
2020-05-13 17:41:17 +08:00
因为是内部类哇
jinzhongyuan
2020-05-13 17:59:29 +08:00
@xinQing 额,我的意思定义在里面看起来好麻烦
hantsy
2020-05-13 18:09:14 +08:00
太正常了,如果不暴露给外面调用,用单独文件干嘛 。
如果你看 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
2020-05-13 18:11:09 +08:00
安卓的官方教程里也有这种写法,文件太多反而维护看起来麻烦。
hantsy
2020-05-13 18:15:08 +08:00
真正内部类只当它是 Public 类的一个属性就好了。
xinQing
2020-05-13 18:18:17 +08:00
都是有个平衡点的,写一起,代码太多看起来也不舒服;分开后又很多文件,每个才几行代码。公司里面更喜欢分开,团队人多,都改同一个文件冲突太频繁了。这种事情不纠结,自己团队习惯就行
jinzhongyuan
2020-05-13 20:05:34 +08:00
@hantsy 大佬 reactive 玩起来了
jinzhongyuan
2020-05-13 20:05:49 +08:00
@xinQing 嗯嗯
namelosw
2020-05-13 20:26:27 +08:00
因为 Java 没有顶层函数。
luckyrayyy
2020-05-13 20:42:55 +08:00
@hantsy 请问你说的这个“以后”是指什么时候?是有提上某个版本的开发计划了吗?之前没听说过这种变动

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/671282

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX