每当我定义一个新的异常时,我倾向于做两件事之一:
Netbeans并不喜欢它,因为我在同一个文件中定义了一个公共异常,如第2点中的另一个类。虽然我还没有尝试过,但我相信它会因为类似而对我大喊大叫在与第1点相同的文件中出现多个例外的原因。
每个异常是否真的有自己的文件,或者Netbeans会接受其他一些风格?我是Java和Netbeans的新手,我很想知道合适的风格是什么。
答案 0 :(得分:9)
我把异常放在他们自己的文件中。为什么不呢?
一个文件中不能有多个公共类。如果你试图以某种效率的名义将公共异常放入另一个公共类中,我建议你回过头来重新阅读Java规范。
答案 1 :(得分:5)
异常是一个类,需要与所有其他类相同的处理。
因此,如果您需要一个公共异常(如果您想在单个类之外实际使用它,这有点必要),您必须将它放在自己的文件中。就像任何其他类一样。
没有魔力,那只是Java的设计。
您将逐渐喜欢Java已经做出一些非常强大的设计选择的事实。从长远来看,它会让你的生活更轻松。
答案 2 :(得分:2)
将异常分开(不是内部类)是一种很好的做法。这使得它们更易于重用,因此A类不使用嵌套在B类中的类。随着您的类库变大,您将发现不必寻找内部类来对开发更友好。< / p>
以下是每个文件只有一个类的最佳实践,文件名代表类名。
话虽这么说,我倾向于创建类的内部类,它们抛出它们,除非它们足够通用以供其他类使用。通常是因为开发时间线以及我知道异常类非常专业而不能在别处使用的事实。当最后期限合理时,我正逐渐将它们放入单独的文件中,因为 更难以访问内部类。