什么是方法重载
方法重载是同一个类中多态性的一种表现,如果类中出现了两个名称一样的方法,那么该类中两个相同的方法就叫做方法重载
举个例子
public void add()
{
System.out.println("add null");
}
public void add(int i)
{
System.out.println("add null");
}
//参数的类型不同
public void add(String add)
{
System.out.println("add null");
}
//参数的个数不同
public void add(int,String add)
{
System.out.println("add null");
}
方法重载与方法重写不同
重载只与参数的类型与参数的个数有关 其他的修饰符与返回值都不影响重载
比如
public void add()
{
System.out.println("add null");
}
Private static void add(String add)
{
System.out.println("add null");
}
这个也是方法的重载 他们对于重载来说 不同之处 只有参数的个数不同
可能遇到这样一个问题
面试中经常遇到的问题
看下面例子
public static void add(String a)
{
System.out.println("String null");
}
public static void add(StringBuffer add)
{
System.out.println("StringBuffer null");
}
public static void add(StringBuilder add)
{
System.out.println("StringBuilder null");
}
public static void main(String[] args) {
add("ssss");
}
输出结果为: String null
为什么了 因为 “ssss” 本省就是一个String类型 不信 测试一下
System.out.println("sss".getClass().getSimpleName());
输出结果 String