package example;
class dup
{
public static void main(
String[] args)
{
System.out.println("Hello World!");
dup a=new dup();
a.m1(null);
}
void m1(Throwable t)
{
System.out.println("Throwable");
}
void m1(Exception t)
{
System.out.println("Exception");
}
void m1(StringBuffer t)
{
System.out.println("StirngBuffer");
}
}
when i run this class i am gettiing this exception
Error(9,5): reference to m1 is ambiguous; both method m1(java.lang.Exception) in class example.dup and method m1(java.lang.StringBuffer) in class example.dup match
if i remove this method
void m1(StringBuffer t)
{
System.out.println("StirngBuffer");
}
application is compiled fine;
when i run the class
i am getting o/p
Hello World!
Exception
but i assumed o/p will be
Hello World!
Throwable
why??