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. The program cannot compile because the compiler cannot determine which max method should be invoked.
This is known as ambiguous method invocation.
You might also like to view...
If an application hangs up, you can use the ____ to close a non-responding program.
A. Task Manager B. Help window C. Project Manager D. virus software
A form based on a table that contains a macro inherits the logic of the table
Indicate whether the statement is true or false
Times New Roman is a font.
Answer the following statement true (T) or false (F)
The implementations of the __str__ and __eq__ methods in the AbstractCollection class can be used in both unordered and linear collections.
Answer the following statement true (T) or false (F)