方法重载
概述:
方法重载是指同一类中定义的多个方法之间的练习,满足下列条件的多个方法相互构成重载。
多个方法在同一类中
多个方法具有相同的方法名
多个方法的参数不相同,类型不同或者数量不同
方法重载的特点:
重载仅对应方法的定义,与方法的调用无关,调用方式参照标准格式。
重载仅针对同一类中方法的名称与参数进行识别,与返回值无关,换句话说不能通过返回值来判定两个方法是否相互构成重载。
方法名相同,但是参数也相同,所以不是重载。
方法名相同,但是参数个数不同,所以是!
类型不同,也是重载。。
!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
两个类!!!两个类!!!两个类!!!两个类!!!两个类!!!两个类!!!两个类!!!两个类!!!两个类!!!两个类!!!两个类!!!两个类!!!
与返回值无关。
在调用的时候,Java虚拟机会通过参数的不同来区分同名的方法。
package com.itheima;
public class eigthy {
public static void main(String[] args) {
int result = getSum(10,20);
System.out.println(result);
double result2 = getSum(10.0,20.0);
System.out.println(result2);
int result3 = getSum(10,20,30);
System.out.println(result3);
}
public static int getSum(int a,int b ){
return (a+b);
}
public static double getSum(double a,double b){
return (a+b);
}
public static int getSum(int a,int b,int c){
return(a+b+c);
}
}
方法重载的练习
package com.itheima;
public class eighty_one {
public static void main(String[] args) {
System.out.println(compare(10,20));
System.out.println(compare((byte)10,(byte)20));
System.out.println(compare((short)10,(short)20));
System.out.println(compare(10L,20L));
}
public static boolean compare(byte a, byte b){
System.out.println("byte");
return a == b;
}
public static boolean compare(short a, short b){
System.out.println("short");
return a == b;
}
public static boolean compare(int a, int b){
System.out.println("int");
return a == b;
}
public static boolean compare(long a, long b){
System.out.println("long");
return a == b;
}
}