主方法相當於是客戶端,在接口與具體子類之間可以加入一個過渡端,通過此過渡段取得接口實例。
程序在接口和子類之間加入一個過渡端,通過此過渡端取得接口的實例化對象。一般稱這個過渡端爲工廠類。一般使用靜態方法或者靜態類。
舉一個栗子:
interface Fruits{ //定義一個吃水果的接口
public void eat();
}
class Apple implements Fruits{
public void eat(){
System.out.println("吃蘋果");
}
};
class Orange implements Fruits{
public void eat(){
System.out.println("吃橘子");
}
};
class Factory{ //定義工廠類
public static Fruits getInstance(String className){
Fruits f =null; //定義接口對象
if("apple".equals(className)) //判斷是否是Apple類的標記
f = new Apple();
if("orange".equals(className)) //判斷是否是Orange類的標記
f = new Orange();
return f;
}
};
public class ExceptionTest1 {
public static void main(String args[]){
Fruits f = null;
f = Factory.getInstance("apple");
f.eat();
}
}