java变量的作用域

---

图示:

image-20210223124457234

image-20210223124522827

image-20210223134347839

注意存在和可见性的不同

存在说明未被视作垃圾回收,可见意味着对于代码中某些位置开放访问。

image-20210223124343666

局部变量成员变量

image-20210223134138283

局部变量将遮罩同名的实例变量,此时若仍要访问实例变量,应参照以下方法

image-20210223134454654

也就是说:

image-20210223134628511

static方法非static 方法的区别:

非static方法:(对象.方法,实际上通过this链接到对象)

image-20210223134751190

static方法:(类名.方法)

image-20210223134813419

若不了解这个规则,就可能遇到如下的经典错误:

image-20210226132409103

解决方法有两个:

  1. 将eao声明为static

    image-20210226135507483

  2. 在main方法中先将eao所属对象(Class Solution)进行实例化,再通过 对象名.方法 调用

    solution.eao(num)

    image-20210226135224807

原文地址:https://www.cnblogs.com/potofsalt/p/14435768.html