Java 示例 - 方法重载

  • 问题描述

    如何重载方法?
  • 解决方案

    此示例显示了根据参数的类型和数量重载方法的方式。
    
    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 MainClass {
       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
    
    以下是方法重载的另一个示例
    
    public class Calculation {
       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[]){
          Calculation cal = new Calculation();
          cal.sum(20,30,60);
          cal.sum(20,20);
       }
    }
    
    上面的代码示例将产生以下结果。
    
    110
    40