Java中的static关键字
Java 中的 static 关键字 Java 中的 static 关键字是用于声明类的成员变量和成员方法的,它可以使得变量和方法属于类本身,而不属于某个对象。静态变量也称为类变量,静态方法也称为类方法。静态变量和静态方法可以直接通过类名调用,不需要通过对象去调用。 一、静态变量的定义和使用 静态变量是属于类的成员变量,它可以被所有对象共享。静态变量的定义使用 static 关键字,例如:`public static int count;`静态变量可以直接通过类名调用,例如:`ClassName.count`。 二、静态方法的定义和使用 静态方法是属于类的成员方法,它可以被所有对象共享。静态方法的定义使用 static 关键字,例如:`public static void print() {}`静态方法可以直接通过类名调用,例如:`ClassName.print()`。 三、静态方法的作用 静态方法可以减轻程序的负担,因为它不需要实例化就可以直接调用。通常可用来实现初始化赋值。 四、静态变量和静态方法的调用形式 静态变量和静态方法可以通过类名或对象名调用,例如:`ClassName.staticVariable`或`objectName.staticVariable`。 五、静态方法中的限制 在静态方法中不能调用非静态的方法和引用非静态的变量,因为静态方法是一个编译时方法,它的存储空间需求在编译时就已经确定了。 六、静态方法和非静态方法的调用关系 在非静态方法中可以调用静态方法中的静态方法和引用静态方法中的变量,因为静态方法是一个运行时的方法,在程序运行时(类加载)的时候去为类实例化对象,并为其分配空间。 七、使用 static 的注意事项 在使用 static 时要注意,不能在类的非静态成员方法中声明类的静态的成员变量。 八、声明为 static 的方法的限制 声明为 static 的方法有以下几条限制: * 在静态方法里只能调用同类中其他的静态成员(包括变量和方法)。 * 静态方法不能引用任何形式引用 this 和 super 变量。 九、静态常量的声明和使用 通常为了节省内存,我们通常将常量声明成静态的(static)。对于 final 声明的常量,在声明时必须初始化,否则可以放在构造函数中初始化。 十、静态代码块的定义和使用 静态代码块的定义:不包含在任何方法体中,当类被加载时,自动执行静态代码块,而且只被执行一次,它的作用是:经常用于实现类属性的初始化。 在 Java 中,类装载器把一个类装入 Java 虚拟机中,要经过三个步骤来完成:装载、链接和初始化,其中链接又可以分成校验、准备和解析三步,除了解析外,其它步骤是严格按照顺序完成的。