In method overloading ,if i change the return type to Long
instead of INT,is the program execute

Answers were Sorted based on User's Feedback



In method overloading ,if i change the return type to Long instead of INT,is the program execute..

Answer / janardhan

It will execute the below program also will execute.because
in overloading atleast the order of the perameters should
be different.in java return type never consider by the
compilier.

// Demonstrate method overloading.
class OverloadDemo {
void test() {
System.out.println("No parameters");
}
// Overload test for one integer parameter.
void test(int a) {
System.out.println("a: " + a);
}
// Overload test for two integer parameters.
void test(int a, int b) {
System.out.println("a and b: " + a + " " + b);
}
// overload test for a double parameter
double test(double a) {
System.out.println("double a: " + a);
return a*a;
}
}
class Overload {
public static void main(String args[]) {
OverloadDemo ob = new OverloadDemo();
double result;
// call all versions of test()
ob.test();
ob.test(10);
ob.test(10, 20);
result = ob.test(123.2);
System.out.println("Result of ob.test(123.2): " + result);
}
}


In Java it is possible to define two or more methods within
the same class that share the same name, as long as their
parameter declarations are different. When this is the
case, the methods are said to be overloaded, and the
process is referred to as method overloading. Method
overloading is one of the ways that Java implements
polymorphism.
If you have never used a language that allows the
overloading of methods, then the concept may seem strange
at first. But as you will see, method overloading is one of
Java's most exciting and useful features. When an
overloaded method is invoked, Java uses the type and/or
number of arguments as its guide to determine which version
of the overloaded method to actually call. Thus,
overloaded methods must differ in the type and/or number of
their parameters. While overloaded methods may have
different return types, the return type alone is
insufficient to distinguish two versions of a method. When
Java encounters a call to an overloaded method, it simply
executes the version of the method whose parameters match
the arguments used in the call. Here is a simple example
that illustrates method overloading:

This program generates the following output:

No parameters
a: 10
a and b: 10 20
double a: 123.2
Result of ob.test(123.2): 15178.24

As you can see, test( ) is overloaded four times. The first
version takes no parameters, the second takes one integer
parameter, the third takes two integer parameters, and the
fourth takes one double parameter. The fact that the fourth
version of test( ) also returns a value is of no
consequence relative to overloading, since return types do
not play a role in overload resolution.

When an overloaded method is called, Java looks for a match
between the arguments used to call the method and the
method's parameters. However, this match need not always be
exact. In some cases Java's automatic type conversions can
play a role in overload resolution

Is This Answer Correct ?    6 Yes 0 No

In method overloading ,if i change the return type to Long instead of INT,is the program execute..

Answer / siva thimmannagari

it wont execute

Is This Answer Correct ?    7 Yes 2 No

In method overloading ,if i change the return type to Long instead of INT,is the program execute..

Answer / gt

in java 1.5 on words posible co-varient data types
we can use this

Is This Answer Correct ?    4 Yes 2 No

In method overloading ,if i change the return type to Long instead of INT,is the program execute..

Answer / sitaram

class OverloadDemo {
int test(int x) {
return x*x;
}

int test(long a) {
long l = a*a*a;
return l;
}

double test(double a) {
return a*a;
}

}
public class Over extends OverloadDemo{
public static void main(String[] args) {
OverloadDemo od = new OverloadDemo();
int a = od.test(12.456); //error:Can't convert from
double to int.
}
}

Program not compiled . because Can't convert from double to int.

Is This Answer Correct ?    2 Yes 0 No

In method overloading ,if i change the return type to Long instead of INT,is the program execute..

Answer / ravikiran

yes the program will execute

Is This Answer Correct ?    4 Yes 3 No

In method overloading ,if i change the return type to Long instead of INT,is the program execute..

Answer / umanath

Write a following program:

class OverloadDemo {
int test(int x) {
return x*x;
}

int test(long a) {
long l = a*a*a;
return l;
}

double test(double a) {
return a*a;
}

}

Compile that program:

C:\>javac OverloadDemo.java
OverloadDemo.java:9: possible loss of precision
found : long
required: int
return l;

Is This Answer Correct ?    1 Yes 1 No

Post New Answer

More Core Java Interview Questions

When we should use serialization?

0 Answers  


Can you make an instance of an abstract class?

5 Answers   Accenture,


Can an exception be rethrown?

4 Answers   Wipro,


Can we have multiple public classes in a java source file?

0 Answers  


Difference between == and .equals() ?

0 Answers  






Define max and min heap, also the search time of heap.

0 Answers   GrapeCity,


Consider that class classA, abstract class classB, and final classC have been defined.Which one of the following is correct? 1. classA extends classC implements classB 2. class A extends classB, classC 3. classA extends classB 4. classB implements classC

2 Answers  


What is the dot operator?

0 Answers  


Compare java and python.

0 Answers  


Why do we use public static with the main function in Java?

13 Answers   College School Exams Tests, Infosys,


Can you use abstract and final both with a method?

0 Answers  


Explain the difference between collection api and stream api in java8?

0 Answers  


Categories