第45条:将局部变量的作用域最小化
2016-08-08 22:13
399 查看
将局部变量的作用域最小化,可以增强个代码的可读性和可维护性,并降低出错的可能性。
方法:
1.在第一次使用它的地方声明。如果变量在使用之前声明,对于试图理解程序功能的读者来说,多了一个分散注意力的因素,等到用到该变量的时候,可能已经记不起变量的类型或者初始值了。
2.几乎每个局部变量的声明都应该包含一个初始化表达式。如果还没有足够的信息对一个变量进行有意义的初始化,就应该推迟这个声明,直到可以初始化为止。例外,try-catch语句,如果一个变量被一个方法初始化,而这个方法有可能抛出一个受检异常,该变量就必须在try块的内部被初始化,如果变量的值在try块外部被使用,它就必须在try块之前被声明。
循环提供机会将变量的作用域最小化,for循环允许声明循环变量,它们的作用域被限定在正好需要的范围之内。for循环优先于while循环。
3.使方法小而几种。如果两个操作合并到同一个方法,与另一个操作相关的局部变量就有可能会出现在执行另一个操作的代码范围之内。为了防止这种情况,把两个操作分到两个方法中,每个方法执行一个操作。
方法:
1.在第一次使用它的地方声明。如果变量在使用之前声明,对于试图理解程序功能的读者来说,多了一个分散注意力的因素,等到用到该变量的时候,可能已经记不起变量的类型或者初始值了。
2.几乎每个局部变量的声明都应该包含一个初始化表达式。如果还没有足够的信息对一个变量进行有意义的初始化,就应该推迟这个声明,直到可以初始化为止。例外,try-catch语句,如果一个变量被一个方法初始化,而这个方法有可能抛出一个受检异常,该变量就必须在try块的内部被初始化,如果变量的值在try块外部被使用,它就必须在try块之前被声明。
循环提供机会将变量的作用域最小化,for循环允许声明循环变量,它们的作用域被限定在正好需要的范围之内。for循环优先于while循环。
3.使方法小而几种。如果两个操作合并到同一个方法,与另一个操作相关的局部变量就有可能会出现在执行另一个操作的代码范围之内。为了防止这种情况,把两个操作分到两个方法中,每个方法执行一个操作。
相关文章推荐
- Effective Java - 第45条:将局部变量的作用域最小化
- 第45条:将局部变量的作用域最小化
- (45):将局部变量的作用域最小化
- 第四十五条:将局部变量的作用域最小化
- 第45条 通用程序设计——将局部变量的作用于最小化
- Java高效编码:将局部变量的作用域最小化
- 将局部变量的作用域最小化
- 将局部变量的作用域最小化
- Effective Java(2nd Edition) Item 45 最小化局部变量的作用域(译文)
- Effective Java(2nd Edition) Item 45 最小化局部变量的作用域
- c++中全局变量,全局静态变量,局部静态变量,局部变量的作用域和生命周期
- 2015062812 - EffactiveJava笔记 - 第45条 将局部变量的作用域最小化
- 变量的6种作用域:全局作用域,文件作用域,命名空间作用域,类作用域,局部作用域,语句作用域
- C/C++语言中变量作用域:局部变量,全局变量,文件级变量
- 【JavaScript】(5)匿名函数的定义方式、变量的作用域(局部变量,全局变量)
- 局部变量作用域,方法编写的注意事项:或者说是一些原则
- 成员变量和局部变量同名 / 局部变量的作用域最小化
- 026day(全局,局部,静态变量和变量的作用域,生存期)
- 变量的6种作用:全局作用域,文件作用域,命名空间作用域,类作用域,局部作用域,语句作用域
- 局部变量的作用域