方法的重載(overload) 1 //定義兩個int型變數的和 2 public int getSum(int i, int j) { 3 return j + i; 4 } 5 6 //定義三個int變數的和 7 public int getSum(int i, int j, int k) { ...
Lesson Six 2018-04-20 00:48:57
1.一個項目或工程,一定是由一個一個類構成的。 2.類是抽象的,比如建築圖紙。而具體的建築,是根據圖紙建設成的,實際上就是類的實例化 3.完成一個項目或功能的思路 3.1所要完成的功能對應的類的對象是否存在 3.2若存在,則通過對像直接調用對應的類中的屬性或方法即可 3.3若不存在,需要創建類的對象。 3.4若類都不存在,就需要設計類。 4.面向對像編程的三條主線: 4.1類及類的構成成分:屬性、方法、構造器、代碼塊、內部類 4.2面向對像編程的特征:封裝性、繼承性、多態性。 4.3其它的關鍵字............. 類的初始化的記憶體解析 記憶體劃分的結構: 棧:引用名、局部變數 堆: new 出來的“東西”。 如成員變數、方法實體、對像實體 方法區 含字元串常量 靜態域:聲明為static的變數
方法的重載(overload)
1.同一個類中多個方法構成重載
2.方法名必須相同
3.方法的參數列表不同
3.1參數的個數不同
3.2參數類型不同
如果同時滿足以上三條,則構成重載。
方法的重載與方法的 返回值類型 和 參數名 沒有關係
1 //定義兩個int型變數的和 2 public int getSum(int i, int j) { 3 return j + i; 4 } 5 6 //定義三個int變數的和 7 public int getSum(int i, int j, int k) { 8 return i + j + k; 9 } 10 11 //不能與其它方法構成重載 !!!方法名!!! 12 public int getSum1(int i, int j, int k) { 13 return i + j + k; 14 } 15 16 //定義兩個double數據的和 17 public double getSum(double d1, double d2) { 18 return d1 + d2; 19 } 20 21 //定義三個double數據的和 22 public double getSum(double d1, double d2, double d3) { 23 return d1 + d2 + d3; 24 }示例
PS:形參的排列順序也決定著方法之間能否構成重載
1 // 下麵這兩個方法依然構成重載 2 public double getSum(int d1, double d2) { 3 return d1 + d2; 4 } 5 6 public double getSum(double d2, int d1) { 7 return d1 + d2; 8 }形參順序也能決定方法是否能構成重載
1 // 以下三個方法構成重載 2 public int mOl(int a) { 3 return a * a; 4 } 5 6 public int mOl(int a, int b) { 7 return a * b; 8 } 9 10 public void mOl(String c) { 11 System.out.println(c); 12 } 13 14 15 public int max(int a, int b) { 16 return (a > b) ? a : b; 17 } 18 19 public int a(int a, int b, int c) { 20 return (max(a, b) > c) ? max(a, b) : c; 21 }重構和三元運算符