天天看點

韓順平Java(類與對象02——重載、可變參數、作用域)

方法重載(overload)

  • 簡介
韓順平Java(類與對象02——重載、可變參數、作用域)
韓順平Java(類與對象02——重載、可變參數、作用域)
韓順平Java(類與對象02——重載、可變參數、作用域)

 這種不能被稱為重載(隻是名字不一樣)

韓順平Java(類與對象02——重載、可變參數、作用域)

 傳回值不同也不算重載,是方法的重複定義。

可變參數(variable parameters)

韓順平Java(類與對象02——重載、可變參數、作用域)
  • 小練習:
韓順平Java(類與對象02——重載、可變參數、作用域)
public class Varparameter {

    //可變參數
    public static void main(String[] args) {
        Var v1 = new Var();
        v1.score("張三", 88, 98, 78);
    }
}

class Var {

    public void score(String s, int... i) {
//        可變參數的本質是數組,實參也可以是數組
        int sum = 0;
        for (int j = 0; j < i.length; j++) {
            sum += i[j];
        }      
  System.out.println(s +i.length+ "門課的總成績為:" + sum); //張三3門課的總成績為:264      
}      

作用域(scope)

韓順平Java(類與對象02——重載、可變參數、作用域)

 我的了解:因為對象在被建立時就會把屬性和方法加載到記憶體裡,而方法裡的局部變量需要建立對象并調用後才會用到,是以需要初始化。

韓順平Java(類與對象02——重載、可變參數、作用域)