Помогите разобраться в этом куске кода.
ageSwap(olga, vera);

       System.out.println("Olga is " + olga.age);
       System.out.println("Vera is " + vera.age);
   }

   private static void ageSwap(Student a,
                               Student b)
   {
       int c = a.age;  //21
       a.age = b.age;  //15
       b.age = c;  //21
Я упорно не понимаю как здесь все работает и как, что и с чем здесь все взаимодействует... В какой момент, куда и как передаются параметры? Это происходит здесь
ageSwap(olga, vera);
или здесь
private static void ageSwap(Student a, Student b).
Что такое ageSwap? И что такое olga, vera? И что такое private static void ageSwap? И что такое(Student a, Student b)? Я пытался разобраться, а только окончательно запутался. И уже не понимаю, где метод берет свое начало, где конец, и как он вообще работает. *facepalm* Полный код:
public class Primitives
{
  public static void main(String[] args)
  {
    Student olga = new Student();
    olga.name = "Olga";
    olga.age = 21;

    Student vera = new Student();
    vera.name = "Veronika";
    vera.age = 15;

    System.out.println("Olga is " + olga.age);
    System.out.println("Vera is " + vera.age);

    ageSwap(olga, vera);

    System.out.println("Olga is " + olga.age);
    System.out.println("Vera is " + vera.age);
  }

  private static void ageSwap(Student a,
                                    Student b)
  {
    int c = a.age;
    a.age = b.age;
    b.age = c;
  }

  static class Student
  {
    String name;
    int age;
  }
}