欢迎访问宙启技术站
智能推送

Java函数的参数传递方式和调用方式是什么?

发布时间:2023-06-30 08:55:21

Java函数的参数传递方式有值传递和引用传递。调用方式包括直接调用和通过对象调用。

值传递是指将实际参数的值复制一份给形式参数,函数中对形式参数的修改不会影响实际参数的值。在Java中,基本数据类型的参数传递就是值传递,因为基本数据类型的值在栈内存中存储,其传递的是值。

引用传递是指将实际参数的引用(内存地址)复制一份给形式参数,函数中对形式参数的修改会影响实际参数的值。在Java中,对象类型的参数传递就是引用传递,因为对象在堆内存中存储,其引用会在栈内存中复制传递。

调用方式有两种:直接调用和通过对象调用。

直接调用是指通过函数名直接调用函数。在Java中,函数必须定义在类中,可以通过类名和对象名直接调用函数。例如:

public class MyClass {
    public static void myMethod() {
        // 函数体
    }
    
    public static void main(String[] args) {
        // 直接调用函数
        myMethod();
    }
}

通过对象调用是指通过对象名调用对象所属类的函数。在Java中,可以通过对象名调用对象所属类的静态函数和非静态函数。

public class MyClass {
    public void myMethod() {
        // 函数体
    }
    
    public static void main(String[] args) {
        // 创建对象
        MyClass obj = new MyClass();
        
        // 通过对象调用非静态函数
        obj.myMethod();
    }
}

通过对象调用静态函数时,可以使用类名和对象名调用。例如:

public class MyClass {
    public static void myMethod() {
        // 函数体
    }
    
    public static void main(String[] args) {
        // 通过类名调用静态函数
        MyClass.myMethod();
        
        // 通过对象名调用静态函数
        MyClass obj = new MyClass();
        obj.myMethod();
    }
}