【发布时间】:2018-06-23 08:01:52
【问题描述】:
我有一个大约 4,000 行长的 Java 类(很多方法)。然后这个类使用了大约 200 个只有它需要的小类,所以还有 4000 行代码。
如果这是 C#,我会将那些其他的放在一个部分类文件中,这样不同的文件,但它们将保持私有嵌套类仅对父类可见。
有没有办法在 Java 中做到这一点?我不是要求某些方法位于不同的文件中,而是要求私有嵌套类位于不同的文件中。
谢谢 - 戴夫
【问题讨论】:
-
有什么理由不将它们作为类放在同一个包中? (顺便说一下,一个 4000 行长的类文件,大约 3800 行太长了)
-
这些类是静态的,还是在 4000 行的类中使用了一些“很多方法”?
-
把这个类和所有的子类放在一个单独的包中,然后给子类包私有可见性。
-
@Stewart:我认为任意限制类的长度并不是一个好主意。没有上下文,我们真的无法知道这是否太多。你会在github.com/nodatime/nodatime/tree/master/src/NodaTime 中找到很多大约一千行长的类型,但我通常不觉得它们太大。如果你有相当多的方法,每个方法都有大量的文档,它可以很容易地安装。
-
@David 默认可见性 是 包私有。什么意思?
标签: java partial-classes