首页 > 代码库 > 第八章:通用程序设计。ITEM45:将局部变量的作用域最小化。

第八章:通用程序设计。ITEM45:将局部变量的作用域最小化。

 1.将局部变量的作用域最小化,可以增强代码的可读性和可维护性,并降低出错的可能性。在 C 语言中要求局部变量必须在一个代码块的开头处进行声明,出于习惯,有些开发者延续了这样的做法。

  这个习惯需要改正,Java 提供了你在代码块的任何地方声明变量的语法支持。


 2."要使局部变量的作用域最小化,最有力的实践就是在第一次使用它的地方声明"。如果过早的声明,开发者就有可能在真正使用该变量的时候忘记了它的类型或者初始值了,而且也会带来代码块内变量名的名字污染问题,由此引发的 Bug,往往是令人极为沮丧的。


    3."几乎每个局部变量的声明都应该包含一个初始化表达式"。如果你没有足够的信息来满足对一个变量进行有意义的初始化,就应该推迟这个声明,直到可以初始化为止。这条规则有个例外的情况与 try-catch语句有关。

  如果一个变量被一个方法初始化,而这个方法可能会抛出一个异常,该变量就必须在 try 块内初始化,如果这个变量的值也必须在 try 块之外被访问,它就必须在 try 块之前被声明,但是遗憾的是在try 块之前,它还不能被"有意义地初始化"。

第八章:通用程序设计。ITEM45:将局部变量的作用域最小化。