Java 在代码的中间级别声明局部变量是好的吗?
在阅读《清洁代码》一书时,我遇到了以下说明: “局部变量 应该在第一次使用的上方声明,并且应该有一个小的垂直范围 不希望局部变量声明为与它们的用法相距数百行。” 请参见以下示例:Java 在代码的中间级别声明局部变量是好的吗?,java,coding-style,Java,Coding Style,在阅读《清洁代码》一书时,我遇到了以下说明: “局部变量 应该在第一次使用的上方声明,并且应该有一个小的垂直范围 不希望局部变量声明为与它们的用法相距数百行。” 请参见以下示例: public class A { public static void main(String[] args) { String name = "Robert"; String country = "iiiii"; int age = 21;
public class A {
public static void main(String[] args) {
String name = "Robert";
String country = "iiiii";
int age = 21;
String hobby = "Soccer";
System.out.println("my name is "+name+"I'm "+age+" and I'm from "+country);
/*
*
* a lot of code here
*
* */
System.out.println("my hobby is: " + hobby);
}
}
在这里,变量hobby是其用法的一块绊脚石,因此我想确定它是否干净,可以像下面的代码那样编写,因为我经常看到在函数的顶层声明局部变量:
/*the previous code here*/
String hobby = "Soccer";
System.out.println("my hobby is: " + hobby);
实际上,建议在尽可能小的范围内声明变量。所以在你使用它的地方声明它。
这只会让你的代码有点混乱 当我们谈论局部变量时,这本书所说的作为一般规则是正确的 关键是,如果将声明和变量的使用紧密地联系在一起,代码的可读性就会更好。如果它们相距很远,您可能会发现自己向后扫描了许多行以找到声明。这打破了你的注意力 (现代IDE有聪明的方法向您显示变量的类型,或转到其声明。但是,如果您可以在同一“页面”上看到声明和用法,则更容易。)
话虽如此,这在某种程度上是个人偏好的问题。有些人喜欢“在顶部声明变量”,因为一些老式的编程语言不允许在声明和其他语句之间穿插。我发现它更具可读性。如果你的方法很长,最好在你需要的时候声明变量,这样读你代码的人就不会疯狂地搜索变量。但这只是我的意见;)相信书中的指示:)@BackSlash是的,你是对的,很好的意见。谢谢,你的引用回答了你的问题。那么你不知道的是什么;我不明白,真的;它既有用又杂乱无章