The Java Program: PassByWrapper.java
1 // PassByWrapper.java: Java uses call by value; wrapper class does not help
2
3 public class PassByWrapper {
4
5 public static void main (String[] args) {
6 Double one = new Double (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" used as a temporary local variable
15 arg = new Double (arg.doubleValue()/2.0);
16 System.out.println ("halved: arg = " + arg);
17 }
18
19 public static void printHalf (final Double arg) {
20 System.out.println ("printHalf: arg = " + new Double (arg.doubleValue()/2.0));
21 }
22
23 }