interface Work{
public void doWork();
}
class StudentWork implements Work{
@Override
public void doWork() {
System.out.println("student 寫作業");
}
}
class TeacherWork implements Work{
@Override
public void doWork() {
System.out.println("teacher 批改作業");
}
}
interface WorkFactory{
public Work getWork();
}
class StudentWorkFactory implements WorkFactory{
@Override
public Work getWork() {
return new StudentWork();
}
}
class TeacherWorkFactory implements WorkFactory{
@Override
public Work getWork() {
return new TeacherWork();
}
}
public class TestFactory {
/**
* @Title: main
* @Description:
* @param:
* @return void
* @user: wangzg
* @Date:2014-10-27
* @throws
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
WorkFactory workFactory1 = new StudentWorkFactory();
workFactory1.getWork().doWork();
System.out.println();
WorkFactory workFactory2 = new TeacherWorkFactory();
workFactory2.getWork().doWork();
}
}
設計模式之工廠模式
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.