Consider the following piece of code. (The numbers on the left margin denote line numbers.) line# 01 public class funcRef { 02 private int n; 03 public funcRef (int m) {n = m;} 04 public static void func (funcRef t) {t.n++;} 05 public static void main (String [] args) { 06 funcRef t1, t2; 07 t1 = new funcRef(20); 08 t2 = t1; 09 System.out.print(t2.n); 10 func(t1); 11 System.out.print(t2.n); 12 func(t1); 13 System.out.print(t1.n); 14 func(t2); 15 System.out.print(t1.n); 16 func(t2); 17 System.out.print(t1.n); 18 System.out.print(t1.n); 19 return; 20 } 21 } Out of the following, tick the true statements and leave the false statements unticked. (More than one of the statements could be true. You get full marks only for marking all the statements correctly. There are no partial marks.) A. The output of the program will be 202022222222. B. When func(t1) is called in line 12, the object referenced by t1 is copied to a new object that is then referenced by the variable t within the local scope of the function func. C. Line 08 creates a distinct copy of the instance/object referenced by t1. The new object is henceforth referenced by t2. D. Line 18 prints the value of the member variable n of the object referenced by t2
Consider the following piece of code. (The numbers on the left margin denote line numbers.)
line#
01 public class funcRef {
02 private int n;
03 public funcRef (int m) {n = m;}
04 public static void func (funcRef t) {t.n++;}
05 public static void main (String [] args) {
06 funcRef t1, t2;
07 t1 = new funcRef(20);
08 t2 = t1;
09 System.out.print(t2.n);
10 func(t1);
11 System.out.print(t2.n);
12 func(t1);
13 System.out.print(t1.n);
14 func(t2);
15 System.out.print(t1.n);
16 func(t2);
17 System.out.print(t1.n);
18 System.out.print(t1.n);
19 return;
20 }
21 }
Out of the following, tick the true statements and leave the false statements unticked.
(More than one of the statements could be true. You get full marks only for marking all the statements correctly. There are no partial marks.)
The output of the program will be 202022222222.
When func(t1) is called in line 12, the object referenced by t1 is copied to a new object that is then referenced by the variable t within the local scope of the function func.
Line 08 creates a distinct copy of the instance/object referenced by t1. The new object is henceforth referenced by t2.
Line 18 prints the value of the member variable n of the object referenced by t2 .
Step by step
Solved in 3 steps