Determine Output:
class A{
public static void method(int i){
System.out.print("Method 1");
}
public static int method(String str){
System.out.print("Method 2");
return 0;
}
}
public class Test{
public static void main(String args[]){
A.method(5);
}
}
class A{
public static void method(int i){
System.out.print("Method 1");
}
public static int method(String str){
System.out.print("Method 2");
return 0;
}
}
public class Test{
public static void main(String args[]){
A.method(5);
}
}
A. Method 1
B. Method 2
C. Compile time error as final method can't be overloaded
D. None of the above
Answer: Option A
Solution(By Examveda Team)
Overloading depends only on the method or constructor name and its parameter list i.e. method(int i) and method(String str) So, overloading does not depend on access modifiers(public, private, protected), access specifiers(static, final) and return type.
Related Questions on Constructors and Methods
What is a constructor in Java?
A. A special method to create instances of classes
B. A method used for mathematical calculations
C. A method to perform string manipulations
D. An exception handling mechanism
In Java, which method is automatically called when an object is created?
A. start()
B. main()
C. init()
D. constructor()
What is method overloading in Java?
A. Defining multiple methods with the same name in the same class
B. Calling methods from another class
C. Using methods to load data from a file
D. Running methods in parallel threads
Join The Discussion