-
作用域不同
局部变量的作用域仅限于定义它的方法。
成员变量的作用域在整个类内部都是可见的。 -
初始值不同
java会给成员变量一个初始值。
java不会给局部变量一个初始值。 -
定义次数不同
在同一个方法中,不允许同名局部变量。
在不同方法中,允许同名局部变量。 -
优先级不同
局部变量和成员变量同时命名时,局部变量的优先级更高。
这些和前端基本一致,对应前端的局部变量和全局变量。不同区别在于var可以重复定义,不过es6的let和const不能重复定义,let和const也存在暂时性死区
未定义使用会直接报错。