Среди вопросов заданных здесь, я не встретил моего. Только вопросы по сортировке, с которыми у меня не возникло никаких проблем. Вопрос у меня такой: Каким образом передается массив int[] array из метода sort() в метод main(String...)? Убил на это 2 часа, после чего случайно обнаружил, что он передается каким-то образом! Поле int[] array не должно существовать вне метода Main и должно заканчиваться вместе с последней фигурной скобкой. Как может метод sort() изменить поле int[] array метода Main, если по идее он даже и знать не должен о полях метода Main? Объясните мне пожалуйста это простым языком
public class Solution {
    public static void main(String[] args) throws Exception {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        int[] array = new int[20];
        for (int i = 0; i < 20; i++) {
            array[i] = Integer.parseInt(reader.readLine());
        }

        sort(array);

        for (int x : array) {
        System.out.println(x);
        }
    }

    public static void sort(int[] array) {
        //напишите тут ваш код
     /*
         здесь сортируется переданной массив по убыванию пузырьковым методом
    */
    }
}