Java编码标准:变量声明

时间:2013-06-11 12:11:17

标签: java coding-style

根据Java编码标准,以下哪项是最佳实践

public void function1(){
 boolean valid = false;
 //many lines of code
 valid = validateInputs();
 //many lines of code
}

public void function1(){
 //many lines of code
 boolean valid = validateInputs();
 //many lines of code
}

此处'有效'不适用于返回。它的范围仅限于函数内部。有时只有一个条件

我通常编码类似于第二种情况。看来我的上级不喜欢这个并在我提交审核时修改代码。是否有一些具体原因导致我的方法不正确?

我认为第一种方法的缺点是很难在稍后的时候将方法重构为多种方法。

4 个答案:

答案 0 :(得分:4)

我会选择第二种方法 - 这里的Java编码标准不是很多,而是代码清晰易读。此外,您在第一种情况下将值false分配给valid,但这并不正确,因为valid此时不应该有任何值。

另外,我不希望名为validateInputs()的方法返回boolean。没有传递参数,名称没有提示方法会返回一些东西。如何将代码重构为boolean validInput = isValid(input)

答案 1 :(得分:2)

决定背后总会有推理。

第二个例子更好,因为初始化声明中的值是好的。

Google有一个很好的set of standards适用于许多C类语言。您要引用的示例显示在“局部变量”部分中。

答案 2 :(得分:2)

我更愿意只在它们使用的范围内声明变量。这样可以避免在不应该使用时意外使用它,这意味着您可以同时看到声明和用法,而不必跳到代码的开头找到它。

在C日,您必须使用第一个表单,因为编译器不是很聪明。但是添加了第二种形式,因为它使代码更容易理解AFAIK。

答案 3 :(得分:2)

无论哪个更好都是个人品味的问题。每个地方都有自己的标准,所以你应该在工作中遵循它。

这是我认为每个程序员都应该拥有自己的个人项目的另一个原因。这样你就可以在家里以自己的风格进行编码,这样你就不会只考虑一种风格。