The Java Program: PassByValue.java

  1 // PassByValue.java:  Java uses call by value; from Arnold and Gosling
  2 
  3 class PassByValue {
  4 
  5    public static void main (String[] args) {
  6       double one = 1.0;
  7       System.out.println ("before: one = " + one);
  8       halveIt (one);
  9       System.out.println ("after:  one = " + one);
 10       printHalf (one);
 11    }
 12 
 13    public static void halveIt (double arg) {
 14       arg /= 2.0;   // "arg" used as a temporary local variable
 15       System.out.println ("halved: arg = " + arg);
 16    }
 17 
 18    public static void printHalf (final double arg) {
 19       System.out.println ("printHalf: arg = " + arg/2);
 20    }
 21       
 22 }