Java如何過載方法?

2019-10-16 22:30:15

在Java中,如何過載方法?

此範例顯示根據引數的型別和數量過載方法。

package com.yiibai;

class MyClass {
    int height;

    MyClass() {
        System.out.println("bricks");
        height = 0;
    }

    MyClass(int i) {
        System.out.println("Building new House that is " + i + " feet tall");
        height = i;
    }

    void info() {
        System.out.println("House is " + height + " feet tall");
    }

    void info(String s) {
        System.out.println(s + ": House is " + height + " feet tall");
    }
}

public class MethodOverloading {
    public static void main(String[] args) {
        MyClass t = new MyClass(0);
        t.info();
        t.info("overloaded method");

        // Overloaded constructor:
        new MyClass();
    }
}

執行上面範例程式碼,得到以下結果 -

Building new House that is 0 feet tall
House is 0 feet tall
overloaded method: House is 0 feet tall
bricks

範例-2

package com.yiibai;

public class MethodOverloading2 {
    void sum(int a, int b) {
        System.out.println(a + b);
    }

    void sum(int a, int b, int c) {
        System.out.println(a + b + c);
    }

    public static void main(String args[]) {
        MethodOverloading2 cal = new MethodOverloading2();
        cal.sum(200, 130, 260);
        cal.sum(20, 30);
    }
}

執行上面範例程式碼,得到以下結果 -

590
50