1. 无论是静态方法还是非静态方法的局部变量,在程序执行时都在栈中被初始化,随着 被调用的 方法{}的结束而被释放,生命周期和局部一样长;
2. static定义的变量生存在静态存储空间,生命周期和类一样长;
3. 基于1,2 , 如果在(静态,非静态)方法内定义static 局部变量,都有这种生命周期的矛盾存在;
4.如果只需要在局部实用,将其定义成static也没有意义,如果不仅是要在局部实用,那么根据需求将其定义在方法外部才是更好的解决办法
5. 所以容许 原帖中的 定义方式 存在, 是矛盾的 而且 不能解决实际问题的。
这是我的一些理解,谢谢! |