摘要:
为什么静态的方法,只能访问静态资源(如静态属性或方法),却不能访问非静态资源?而非静态方法可以访问静态资源?-> 首先,非静态方法可以访问静态资源:比如产生了一个类的实例,调用实例的普通非静态方法,方法内部访问另外一个类的一些静态资源,如static final 类型的常量,这个很常用,容易理解。-> 其次,为什么静态方法不可以访问非静态资源?我们知道,静态属性和方法,是随着类的加载就已经加载进来了,此时类的实例并没有产生。假设虚拟机加载类A的静态方法f1时,f1内部访问了另外一个类B的非静态资源(如属性b),那么,我们知道,由于类的非静态资源只有类的实例可以访问,只有类产生了实例 阅读全文