What is the result?

Given:
<code>
class Overloading {
void x (int i) {
System.out.println(“one”);
}
void x (String s) {
System.out.println(“two”);
}
void x (double d) {
System.out.println(“three”);
}
public static void main(String[] args) {
new Overloading().x (4.0);
}
</code>
What is the result?

Given:

class Overloading {
void x (int i) {
System.out.println("one");
}
void x (String s) {
System.out.println("two");
}
void x (double d) {
System.out.println("three");
}
public static void main(String[] args) {
new Overloading().x (4.0);
}

What is the result?

A.
One

B.
Two

C.
Three

D.
Compilation fails

Explanation:

In this scenario the overloading method is called with a double/float value, 4.0. This makes the third
overload method to run.
Note:
The Java programming language supports overloading methods, and Java can distinguish between
methods with different method signatures. This means that methods within a class can have the
same name if they have different parameter lists. Overloaded methods are differentiated by the
number and the type of the arguments passed into the method.



Leave a Reply 0

Your email address will not be published. Required fields are marked *