java中static使用之静态方法注意点

 

1.静态方法可以直接调用同类中的静态成员,但是不能直接调用非静态成员,这是为什么呢?大家想一下,静态成员在对象创建之前就要写入内存,所以它在内存中是实实在在的存在的,而非静态还不存在内存中,所以不能调用,也就是静态方法使用的东西比较受限制

java中static使用之静态方法注意点

图1

 

那么怎么样才可以调用非静态成员呢?很简单,只需要把非静态成员写进内存就可以了,那就通过创建该类的对象来访问,如图2

java中static使用之静态方法注意点

图2

 

2、 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量,普通类中对访问的东西没有太大要求如下所示:

java中static使用之静态方法注意点

 

 图3

3、 静态方法中不能直接调用非静态方法,需要通过对象(对象就相当整容,这样访问就不一样了)来访问非静态方法。如:

java中static使用之静态方法注意点

图4