Java静态方法与静态变量应用详解:调用静态成员、注意事项及静态初始化块应用示例

版权申诉
0 下载量 119 浏览量 更新于2024-03-28 收藏 3.86MB PDF 举报
Java中的 static 使用之静态方法与静态变量一样,我们也可以使用 static 修饰方法,称为静态方法或类方法。其实之前我们一直写的 main 方法就是静态方法。静态方法的使用如下: 1、静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。如:如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。 2、在普通成员方法中,则可以直接访问同类的非静态变量和静态变量。 3、静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。 Java 中的 static 使用之静态初始化块 Java 中可以通过初始化块进行数据赋值。如在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。需要特别注意:静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。 我们来看一段代码: ```Java public class StaticExample { static int num; int val; static { num = 10; System.out.println("Static block: " + num); } { val = 20; System.out.println("Instance block: " + val); } public StaticExample() { System.out.println("Constructor"); } public static void main(String[] args) { StaticExample se = new StaticExample(); } } ``` 运行结果: ``` Static block: 10 Instance block: 20 Constructor ``` 通过输出结果,我们可以看到,程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只执行一次且只在类加载时执行,我们可以利用它来进行一些静态变量的初始化或其他一次性的操作。在实际开发中,静态方法和静态初始化块的灵活运用可以使程序更加清晰易懂。 总的来说,Java中的static关键字可以用来修饰方法和变量,静态方法和静态变量可以直接通过类名调用,无需实例化对象。静态方法中只能访问静态成员,静态初始化块在类加载时执行且只执行一次,可以用来进行静态变量的初始化。静态方法和静态初始化块的使用可以帮助我们更好地组织和管理代码,提高程序的效率和可维护性。Java中的static使用之静态方法和静态初始化块的灵活运用,可以使程序更加健壮和易于理解。