Как работает код после вызова метода в Java? - PullRequest
0 голосов
/ 05 мая 2018

Мой вопрос: «После вызова метода mark () сначала печатается« Аллан », а затем печатается« Имя студента Аллан ». Но я вызвал метод output () только после печати« Имя студента ". Но в выводе он сначала печатает" Allan ", который находится в методе mark (), а затем печатает" 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

Студента зовут Аллан

Если предоставленных данных недостаточно, пожалуйста, запросите меня. Пожалуйста, не посвящайте мой вопрос, так как он навсегда заблокирует меня для вопросов в переполнении стека

1 Ответ

0 голосов
/ 05 мая 2018

Когда вы вызываете метод, вы должны сначала оценить параметр.

В методе 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");

...