Consider the following code snippet:
public class VariablesDemo {
   public static void main(String[] args) {
      final int NUM_OF_STUDENTS = 30;
      int num_of_boys = 20;
      int num_of_girls = NUM_OF_STUDENTS - num_of_boys;
      System.out.println("Number of girls: " + num_of_girls);
   }
}
Explain the purpose and usage of variables and constants in the given code snippet. Provide a step-by-step explanation of what happens when the code runs.
Variables are used to store and manipulate data in a program. In the code snippet provided, variables num_of_boys and num_of_girls are used to represent the count of boys and girls, respectively. They allow us to perform operations and calculations involving these counts.
Constants are used to store values that do not change during the execution of a program. In the code snippet provided, the constant NUM_OF_STUDENTS is used to store the total number of students, which is set as 30. By using a constant, we ensure that the value of NUM_OF_STUDENTS remains unchanged throughout the program.
main method is the entry point of the program.NUM_OF_STUDENTS is declared and initialized with a value of 30. The final keyword is used to indicate that this value cannot be changed.num_of_boys is declared and initialized with a value of 20.num_of_girls is declared and initialized by subtracting the value of num_of_boys from NUM_OF_STUDENTS.num_of_girls is printed to the console using System.out.println.In summary, this code calculates the number of girls by subtracting the number of boys (num_of_boys) from the total number of students (NUM_OF_STUDENTS). The use of variables and constants allows for flexible and efficient manipulation of data within the program.