1. 程式人生 > >java 介面做實參

java 介面做實參

文章目錄

題目

利用介面做引數,寫個計算器,能完成±*/運算

(1)定義一個介面Compute含有一個方法int computer(int n,int m);

(2)設計四個類分別實現此介面,完成±*/運算

(3)設計一個類UseCompute,含有方法:

public void useCom(Compute com, int one, int two)

此方法要求能夠:

  1. 用傳遞過來的物件呼叫computer方法完成運算
  2. 輸出運算的結果

(4)設計一個測試類,呼叫UseCompute中的方法useCom來完成±*/運算

實現

public interface Compute {

    int computer(int n,int m);

}
public class Jia implements Compute {

    @Override
    public int computer(int n, int m) {
        return n+m;
    }
}

public class Jian implements Compute {

    @Override
    public int computer(int n, int m) {
        return n-m;
    }
}

public class Cheng implements Compute {

    @Override
    public int computer(int n, int m) {
        return n*m;
    }
}

public class Chu implements Compute {

    @Override
    public int computer(int n, int m) {
        return n/m;
    }
}

public class UseCompute {
    
    //介面作為引數
    public void useCom(Compute com, int one, int two)
    {
        System.out.println(com.computer(one, two));
    }
}

public class TestCeshi {
    
    public static void main(String[] args) {
        
        UseCompute a =new UseCompute();
        //實參傳具體介面的實現
        a.useCom(new Jia(), 2, 2);
        
        a.useCom(new Jian(), 2, 2);
        
        a.useCom(new Cheng(), 2, 2);
        
        a.useCom(new Chu(), 2, 2);
        
        Compute aa =new Jia();
        System.out.println(aa.computer(3,5));
    }

}