龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

Java编程中的一些常见问题汇总(2)

时间:2014-09-27 03:11来源:网络整理 作者:网络 点击:
分享到:
复制代码 代码如下: public class Message { private String recipient; public Message(String rcpt) { this.recipient = rcpt; } } 很多时候,看一下变量的类名就知道变量该取什么名

复制代码 代码如下:

public class Message {
  private String recipient;
  public Message(String rcpt) {
    this.recipient = rcpt;
  }
}

很多时候,看一下变量的类名就知道变量该取什么名字了。就用它的小写形式就好了,像这样就很靠谱:

复制代码 代码如下:

File file;
User user;
Branch branch;

然而,基础类型的话,永远不要这么做,比如Integer number或者String string。

如果存在多个不同性质的变量的话,可以考虑下使用形容词。比如:

复制代码 代码如下:

String contact(String left, String right);

构造方法

不考虑异常的话,应该只有一个构造方法用来将数据存储到对象变量中。其它构造方法则使用不同的参数来调用这个构造方法。比如说:

复制代码 代码如下:

public class Server {
  private String address;
  public Server(String uri) {
    this.address = uri;
  }
  public Server(URI uri) {
    this(uri.toString());
  }
}

一次性变量

无论如何都应该避免使用一次性变量。这里我所说的“一次性“指的是只使用一次的变量。比如下面这个:

复制代码 代码如下:

String name = "data.txt";
return new File(name);

上述的变量只会使用一次,因此这段代码可以重构成这样:
复制代码 代码如下:

return new File("data.txt");

有的时候,比较罕见的情况中——主要是为了格式更好看些——可能会用到一次性变量。然而,还是应当尽量避免这种情况。

异常

毋庸赘言,永远不要自己吞掉异常,而是应该当它尽量往上传递。私有方法应该始终把受检查异常往外面抛。

不要使用异常来进行流程控制。比方说下面这段代码就是错误的:

复制代码 代码如下:

int size;
try {
  size = this.fileSize();
} catch (IOException ex) {
  size = 0;
}

那如果IOException提示“磁盘已满”的话该怎么办?你还会认为这个文件大小为0,然后继续往下处理?

缩进

关于缩进,主要的规则就是左括号要么在该行的末尾,要么就在同一行上闭合(对于右括号来说则相反)。比如说,下面这个就不正确,因为第一个左括号没有在同一行上闭合,而它后面还有别的字符。第二个括号也有问题,因为它前面有字符,但对应的开括号又没在同一行上:

复制代码 代码如下:

final File file = new File(directory,
  "file.txt");

正确的缩进应该是这样的:
复制代码 代码如下:

StringUtils.join(
  Arrays.asList(
    "first line",
    "second line",
    StringUtils.join(
      Arrays.asList("a", "b")
    )
  ),
  "separator"
);

关于缩进,第二条重要的规则就是同时一行中应该尽量多写一些——上限是80个字符。上面的那个例子并不满足这点,它还可以收缩一下:
复制代码 代码如下:

StringUtils.join(
  Arrays.asList(
    "first line", "second line",
    StringUtils.join(Arrays.asList("a", "b"))
  ),
  "separator"
);

多余的常量

收藏文章
表情删除后不可恢复,是否删除
取消
确定
图片正在上传,请稍后...
评论内容为空!
还没有评论,快来抢沙发吧!
按钮 内容不能为空!
立刻说两句吧! 查看0条评论
精彩图集

赞助商链接