用于长抛出异常列表的java样式

Osc*_*Ryz 6 java coding-style sun-coding-conventions

格式化长throws列表的Java样式是什么?

假设我有这个:

 public void some() throws IOException, ClassNotFoundException, NoSuchMethodException,InvocationTargetException, IllegalAccessException {
  }
Run Code Online (Sandbox Code Playgroud)

应该是:

    public void some() 
        throws IOException, 
               ClassNotFoundException,
               NoSuchMethodException,
               InvocationTargetException,
               IllegalAccessException {
  }
Run Code Online (Sandbox Code Playgroud)

,

    public void some() throws IOException,ClassNotFoundException,
               NoSuchMethodException,InvocationTargetException,
               IllegalAccessException {
  }
Run Code Online (Sandbox Code Playgroud)

或者是其他东西?

akf*_*akf 7

旧的Java代码约定会反对第一个,因为它超过了80个字符.

避免超过80个字符的行,因为很多终端和工具都无法很好地处理它们.

Java代码约定不区分throws长方法签名的长期和其他原因.我建议第二个和第三个是等价的,因为它们都是:

  • 逗号后打破.
  • 将新行与前一行中相同级别的表达式的开头对齐.

我会投票给前者,因为它更容易阅读.说实话,我讨厌遇到那种方法.

当然,真正的经验法则是遵循您所在团队的代码约定.如果他们都使用可以支持81个以上字符行的编辑器并且更喜欢非包装线来节省垂直空间,那应该是您使用的格式化样式.