Java 函数中使用 static 关键词的作用,有和没有有什么区别?

文章 , 技术分享
332 0

在 Java 函数中使用 static 关键字可以将函数定义为静态函数。当一个函数被定义为静态函数时,它不再与任何特定的对象实例相关联,而是属于整个类,可以通过类名直接调用,不需要先创建对象实例。

在静态函数中不能访问非静态的成员变量和成员函数,因为静态函数不属于任何对象实例。它只能访问类级别的静态成员变量和成员函数。

静态函数通常用于实用函数、工具函数和常见函数,这些函数不需要访问实例特定的数据。

以下是一个使用静态函数的示例:

public class MyClass {
    // 静态变量
    static int myStaticVar = 42;

    // 静态函数
    public static void myStaticFunction() {
        System.out.println("静态函数被调用");
    }

    // 实例函数
    public void myInstanceFunction() {
        System.out.println("实例函数被调用");
    }

    public static void main(String[] args) {
        // 直接访问静态变量
        System.out.println("静态变量的值为 " + MyClass.myStaticVar);

        // 调用静态函数
        MyClass.myStaticFunction();

        // 创建对象实例
        MyClass myObj = new MyClass();

        // 调用实例函数
        myObj.myInstanceFunction();

        // 不能通过对象实例调用静态变量或函数
        // myObj.myStaticVar;  // 编译错误
        // myObj.myStaticFunction();  // 编译错误
    }
}

输出结果为:

静态变量的值为 42
静态函数被调用
实例函数被调用
最后更新 2023-07-15
评论 ( 0 )
OωO
隐私评论