Java的Static使用介绍(3)

上面的例子中已经介绍了static修饰变量的情况。静态方法(使用static修饰的方法)也是我们常见的,例如,Java中的main函数。

public static void main(String[] args) {
    ......
}

为什么main函数需要定义为静态方法呢?首先我们来看一下运行java程序的流程。

在java中,函数main是应用程序的入口,JVM需要通过main找到将要执行的程序。在执行main函数时,JVM会检查该方法所在的类是否被加载,如果没有,就加载该类并且加载所有相关的其他类。

相信大家都还没有忘记static的特性吧,没错,那就是固定。首先,在java中,方法不能脱离对象而存在,所以不管main是程序运行的第几个方法,它必须定义在一个类中。其次,由于在这之前还没有类被JVN加载进来,所以就不能通过“对象名.方法名()”的方式来运行。由此可以知道,必须将main方法声明为静态方法。

进行到这里,大家应该明白静态方法的作用了。不过有一点需要注意:在静态方法中不能使用非静态的方法和变量。其实这一点和很容易理解,由于静态方法是类的方法,它不需要实例化类就可以使用,而非静态的方法和变量都是需要实例化后才能使用,这一点就发生了冲突。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/d5b94a4f805b3acb5fa1b53ec51a7544.html