主要由2部分组成: 工厂类抽象类实现抽象类的具体类 一个一本书上的例子: 先建一个接口类: package shejimoshi; public interface Salary { void computerSalary(); } 实现类 public class jiangxiSalary implements Salary{ public void computerSalary() { System.out.println("江西子公司!"); } } public class beijingSalary implements Salary{ public void computerSalary() { // TODO Auto-generated method stub System.out.println("北京子公司!"); } } 工厂类 public class gongsiFactory { public static Salary createSalary(String name){ if("jiangxi".equals(name)) return new jiangxiSalary(); else if("beijing".equals(name)) return new beijingSalary(); return null; } } 客户端代码 public class Client { public static void main(String[] args){ Salary salary = gongsiFactory.createSalary("jiangxi"); salary.computerSalary(); salary = gongsiFactory.createSalary("beijing"); salary.computerSalary(); } } 最后输出: 江西子公司! 北京子公司! 以上是《易学------设计模式的例子》,刚接触设计模式,主要看gof的那本经典以及易学那本书,以后接着在后面补充实践过程中的理解!