天天看點

JavaSE 之 面向對象(上)方法重載

package java_study01;

/*
* 1.定義:在同一類中,相同的方法名,不同的參數清單的方法之間,彼此構成重載!
*   舉例:Arrays中的sort(Xxx[] xxx) / System.out.println(Xxx xxx)
*   
*   總結:"兩同一不同". 
*   兩同:同一個類、方法名相同
*   一不同:參數清單不同(①參數個數不同 ② 參數類型不同)
* 
* 2.方法的重載與否與方法的形參的變量名沒有關系!與方法傳回值類型、權限修飾符、方法體都沒有關系!
* 3.如果确定調用的是一個類的具體的哪個方法?
* 答:指明方法名--->指明參數的類型(符合變量類型自動提升規則)
* */

public class 方法重載 {
	public static void main(String[] args) {
		overloadTest overloadTest = new overloadTest();
		overloadTest.getSum(1, 2);//注釋了1方法,那麼變量類型自動提升到double類型,調用2方法
	}
}

class overloadTest {
	// 如下的五個方法構成重載
	public void getSum(int i, int j) {
		System.out.println("1");
	}

	public double getSum(double d1, double d2) {
		System.out.println("2");
		return d1 + d2;
	}

	public void getSum(String s1, String s2) {
		System.out.println("3");
	}

	// 屬于參數類型不同
	public void getSum(int s1, String s2) {
		System.out.println("43");
	}

	public void getSum(String s1, int s2) {
		System.out.println("5");
	}
}
           

判斷方法重載:

JavaSE 之 面向對象(上)方法重載