在 java 中调用方法后代码如何工作?

How the code works after calling a method in java?

我的问题是,先打印"After calling mark() method, first "Allan”然后打印"The Student's name is Allan"。但是我只在打印"The Student's name is "之后调用了output()方法。但是在输出中它首先在 mark() 方法中打印 "Allan",然后打印 "My name is Allan"。请解释代码在调用 mark() 方法后实际如何工作。“

class student {
    String name;
    int age;
    String gender;

    String mark() {
        System.out.println("Allan");
        return name;
    }
}

public class coke {
    public static void main(String[] args) {
        student detail = new student();
        detail.name = "Allan";
        System.out.println("The Student's name is " + detail.mark());
    }
}

输出: 艾伦

学生的名字是 Allan

如果提供的详细信息不够,请向我提出要求。请不要提出我的问题,因为它会永久阻止我在 Stack overflow

中提问

调用方法时,必须先对参数求值。

main方法中,System.out.println的参数是"The Student's name is " + detail.mark()

要评估 "The Student's name is " + detail.mark(),您需要调用 detail.mark()。因此,System.out.println("Allan"); 将首先执行。

然后得到参数The Student's name is Allan,执行System.out.println("The Student's name is Allan");