Java中的静态方法是什么?

Python07

Java中的静态方法是什么?,第1张

静态方法是在类中使用staitc修饰的方法,在类定义的时候已经被装载和分配。

静态方法为类所有,可以通过对象来使用,也可以通过类来使用。

我们之前一直写的mian方法仔细看看,它就是一个静态方法,静态方法使用如下:

运行结果:

使用静态方法时,要注意:

1、静态方法可以调用同类中的其他成员,但不能直接调用非静态成员,如:

运行结果:

2、但是如果希望静态方法中调用非静态成员,可以通过创建类的对象 ,然后通过对象来访问非静态变量。如

运行结果:

3、静态方法同样不能直接调用非静态方法,但可以通过对象来访问非静态方法,如:

运行结果:

静态方法只能直接调用静态成员(包括变量和方法),而不能直接访问类中的非静态成员

静态方法不能以任何方式引用this和super关键字,因为静态方法在使用前不用创建任何实例对象,当静态方法调用时,this所使用的对象根本没有创建

静态方法中不可能再创建静态变量,不会导致方法里面的变量为静态变量  因为方法中的变量都是局部变量,不可能同时为局部变量又同时是静态变量

JVM对每种类型的变量都有自己的存储区域,static有专门的存储区

局部和静态是冲突的,不可能同时作为标识去修饰一个变量

静态方法是可以通过类型来调用的,不过根据类对象来调用也是可以的

静态成员是共享的,任何通过类调用都是可以的

静态方法可以调用静态方法  可以调用非静态方法(通过类对象调用),静态方法可以调用静态成员变量,但是不能调用非静态成员变量(不能直接调用,但是可以通过类对象调用非静态成员变量)