[BIT0429]-Java 介面作方法形參,執行時傳遞實現介面方法類物件作實參
阿新 • • 發佈:2019-02-15
- 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技術的標準嚴格學習文件,僅作參考交流使用,對於使用本文件的後果,作者不作任何口頭或書面的承諾)