猿问
工厂模式。何时使用工厂方法?
工厂模式。何时使用工厂方法?
什么时候在对象中使用工厂方法而不是Factory类是个好主意?
茅侃侃
浏览 990
回答 3
3回答
慕盖茨4494581
任何将对象创建推迟到其需要使用的对象的子类的类都可以看作是Factory模式的一个示例。
0
0
0
MMMHUHU
如果你想在使用方面创建一个不同的对象。它是有益的。public class factoryMethodPattern { static String planName = "COMMERCIALPLAN"; static int units = 3; public static void main(String args[]) { GetPlanFactory planFactory = new GetPlanFactory(); Plan p = planFactory.getPlan(planName); System.out.print("Bill amount for " + planName + " of " + units + " units is: "); p.getRate(); p.calculateBill(units); }}abstract class Plan { protected double rate; abstract void getRate(); public void calculateBill(int units) { System.out.println(units * rate); }}class DomesticPlan extends Plan { // @override public void getRate() { rate = 3.50; }}class CommercialPlan extends Plan { // @override public void getRate() { rate = 7.50; }}class InstitutionalPlan extends Plan { // @override public void getRate() { rate = 5.50; }}class GetPlanFactory { // use getPlan method to get object of type Plan public Plan getPlan(String planType) { if (planType == null) { return null; } if (planType.equalsIgnoreCase("DOMESTICPLAN")) { return new DomesticPlan(); } else if (planType.equalsIgnoreCase("COMMERCIALPLAN")) { return new CommercialPlan(); } else if (planType.equalsIgnoreCase("INSTITUTIONALPLAN")) { return new InstitutionalPlan(); } return null; }}
0
0
0
随时随地看视频
慕课网APP
相关分类
设计模式
关于qt编程问题?
1 回答
请问视觉设计师如何提升自身的能力?
1 回答
我要回答