1. 程式人生 > >[BIT0429]-Java 介面作方法形參,執行時傳遞實現介面方法類物件作實參

[BIT0429]-Java 介面作方法形參,執行時傳遞實現介面方法類物件作實參

  • 1.定義介面表示某個行為(如:吃飯)
  • 2.定義多個實現該介面的類
  • 3.定義一個方法,以該介面作為形參,執行時以實現該介面的任意類的物件作為實參
  • 4.達到精簡程式碼的目的,並且可複用性好,可維護性高
package cn.bjsxt.oop02;
//1.定義介面表示某個行為(如:吃飯)
public interface InterfaceEat {
    public abstract void eat();
}
package cn.bjsxt.oop02;
//2.定義一個“中國人”類
public class Chinese implements InterfaceEat{
    String name;

    public
Chinese() { super(); } public Chinese(String name) { super(); this.name = name; } @Override public void eat() { System.out.println(name+"用筷子吃飯"); } }
package cn.bjsxt.oop02;
//3.定義一個“印度人”類
public class Indian implements InterfaceEat{
    String name;

    public
Indian(String name) { super(); this.name = name; } public Indian() { super(); } @Override public void eat() { System.out.println(name+"用手吃飯"); } }
package cn.bjsxt.oop02;
//4.定義一個“英國人”類
public class British implements InterfaceEat{
    String name;



    public
British() { super(); } public British(String name) { super(); this.name = name; } @Override public void eat() { System.out.println(name+"用刀叉吃飯"); } }
package cn.bjsxt.oop02;
//5.定義一個方法,以該介面作為形參,執行時以實現該介面的任意類的物件作為實參
public class Test {

    public static void main(String[] args) {
        Chinese chinese=new Chinese("中國人");
        Indian indian=new Indian("印度人");
        British british=new British("英國人");
        showEat(chinese);
        showEat(indian);
        showEat(british);

    }
    public static void showEat(InterfaceEat interfaceEat){
        interfaceEat.eat();
    }
}

2017/10/24 BIT創作,您可以免費轉載和使用!(本模組部落格是作者學習期間整理的學習心得,不是java技術的標準嚴格學習文件,僅作參考交流使用,對於使用本文件的後果,作者不作任何口頭或書面的承諾)