Java中支持两个或者多个方法的的方法名相同,但是方法中参数的个数或者类型必须有区别,这既是Java的重载,Java的重载是起实现多态的方式之一。
当调用这些同名的方法时,Java根据参数类型和参数的数目来确定到底调用哪一个方法,
注意:返回值类型并不起到区别方法的作用
小例子
packageLeiAndDuixiang;
publicclassOverLoad {
voidmethod(){
System.out.println("无参数方法被调用");
}
//void method (intnum){
//System.out.println("参数为int类型的方法被调用");
//}
//
voidmethod (floatnums){
System.out.println("参数为float 类型的方法被调用");
}
voidmethod (Stringnums){
System.out.println("参数为String 类型的方法被调用");
}
publicstaticvoidmain(String[]args) {
OverLoadov=newOverLoad();
ov.method();
ov.method(4);
ov.method(4.5F);
ov.method("你好");
//无参数方法被调用
//参数为float 类型的方法被调用
//参数为float 类型的方法被调用
//参数为String 类型的方法被调用 参数类型无法匹配时,Java会自动将类型进行转换
}
}
网友评论