java静态方法的作用是什么_Java中static的作用详解

Java (1) 2024-06-29 14:23

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
java静态方法的作用是什么_Java中static的作用详解,希望能够帮助你!!!。

静态方法,系统会为静态方法分配一个固定的内存空间。而普通方法,会随着对象的调用而加载,当使用完毕,会自动释放掉空间。普通方法的好处是,动态规划了内存空间的使用,节省内存资源。静态方法,方便,运行快,而如果全部方法都用静态方法,那么每个方法都要有一个固定的空间,这样的话太占内存。

因而也就解释了,为什么静态方法可以直接被类名调用,而不需要用对象调用, 因为他有固定空间,随类的加载而加载。

静态方法不需要对象,它在你定义对向前就有了,因此就可以方便地直接类名调用。不需要实例化对象。

静态方法的使用范围:

package jintaiff; public class jtff { static private int i; int j; public static void main(String[] args) { // TODO Auto-generated method stub jtff.f(); //类名调用静态方法 jtff jj = new jtff(); jj.ff(); } public static void f() { System.out.println("正确 类名调用静态方法"); //System.out.println(j+""); //报错 静态方法调用非静态变量j } public void ff() { System.out.println(i+" 正确 对象调用静态变量i"); } }

 

为什么对象调用静态变量也对呢?前面说了,在对象出来之前,静态的方法或者变量就已经存在了,类名可以调用,那对象就更可以调用了,因为有对象的时候静态变量已经存在了。

 

静态方法可以通过类名调用(当然对象也可以,因为对象比静态方法晚出现,因此对象出现的时候静态方法一定存在),但是依旧受到权限修饰符的限制:

class B{ public void gg() { //System.out.println(jtff.i); //报错 i为jtff私有,B中不能用 } }

 

 

 

 

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

下一篇

已是最新文章

发表回复