Analyze the following code.

public class Test {
public static void main(String[] args) {
System.out.println(max(1, 2));
}

public static double max(int num1, double num2) {
System.out.println("max(int, double) is invoked");

if (num1 > num2)
return num1;
else
return num2;
}

public static double max(double num1, int num2) {
System.out.println("max(double, int) is invoked");

if (num1 > num2)
return num1;
else
return num2;
}
}
a. The program cannot compile because you cannot have the print statement in a non-void method.
b. The program cannot compile because the compiler cannot determine which max method should be invoked.
c. The program runs and prints 2 followed by "max(int, double)" is invoked.
d. The program runs and prints 2 followed by "max(double, int)" is invoked.
e. The program runs and prints "max(int, double) is invoked" followed by 2.

b This is known as ambiguous method invocation.

Computer Science & Information Technology

You might also like to view...

The IPv4 protocol is beginning to be replaced by the ________ protocol

Fill in the blank(s) with correct word

Computer Science & Information Technology

The command bar, located at the top of the Word window, provides menu access to all the Word commands.

Answer the following statement true (T) or false (F)

Computer Science & Information Technology