Jas*_*ack 40 java coding-style inner-classes
有些人可能会认为这是有史以来最不重要问题的候选人.然而代码风格对我来说是一个非常重要的主题,我想确保以可读的方式编写代码 - 对我和大多数开发人员而言.
这就是为什么我想知道你们在哪里宣布你们的内心课程.
我遵循以下方法排序方案,因为它很常见:
public void foo() {
usedByFoo();
}
private void usedByFoo() {
}
public void bar() {
}
Run Code Online (Sandbox Code Playgroud)
我从上到下订购它们,每个方法都接近使用它的位置.
现在我可以对内部类做同样的事情,像这样:
class Outer {
private Inner inner;
private class Inner {};
public Outer() {
}
...
}
Run Code Online (Sandbox Code Playgroud)
我认为这是我要遵循的最一致的风格,但我也经常看到人们在文件的顶部或底部声明所有内部类.
根据我的订购方法,我应该遵循哪种风格?最常见的方法是什么?
Ami*_*hum 54
我会在文件的底部声明内部类 - 通常你对它们的实现不感兴趣,只是想要获得你的主类'方法,所以它们不应该妨碍.
我喜欢的风格是把它们放在最有意义的地方.通常这是在底部所以他们已经走了,但有时我发现将它们放在某组方法之前更有意义(如果这些是使用内部类的方法.)
如果这个类因为大量的方法和内部类而变得过于笨拙,那么它可能是一个糟糕的设计选择(凝聚力太低了.)我有时会让课程偶然得到这种方式而且以后处理它们太可怕了 - 这些如果我能看到一个这样的日子,我通常会重构它,甚至可能在它自己的包中.如果你达到了你有这么多内部课程的地步,你不知道如何处理它们,我会采用这种方法.甚至还有一些建议不要因为这个原因而反对使用内部类(虽然我不同意 - 如果使用得当它们是宝贵的资源,你只需要注意它们不会失控.
| 归档时间: |
|
| 查看次数: |
10694 次 |
| 最近记录: |