文章詳情頁
使用UML編寫Java 設計模式例子 FactoryMethod Pattern
瀏覽:4日期:2024-06-30 14:20:02
內容: 看了論壇上的文章,讀FactoryMethod Pattern UML圖,寫了個小例子程序。做為文章的補充!//Creator.javapublic abstract class Creator{ /** * looks like a factory * contains some products and some process methods */ protected Product duct; abstract String processProduct(); abstract String processProductSpecial(); public String Operation() { return processProduct(); // FactoryMethod for implemention; }}//ConcreteProduct.javapublic class ConcreteProduct extends Product{ public ConcreteProduct() { System.out.println('construct the ConcreteProduct object'); } public String makeString(String str) { return 'This is the product after processing:'+str; }}//Product.javapublic abstract class Product{ public abstract String makeString(String str);}//ConcreteCreatorA.javapublic class ConcreteCreatorA extends Creator{ /** * You can write some other class like this to override * the same methods do diffrent thing; */ public ConcreteCreatorA() { duct=new ConcreteProduct(); System.out.println('instanced a product'); } public String processProduct() { System.out.println('product A:'); return duct.makeString('Make @#a product'); } public String processProductSpecial() { System.out.println('special product B:'); //add another method here return duct.makeString('Make Special @#B product'); }}//TestFactoryMethod.javapublic class TestFactoryMethod{ public TestFactoryMethod() { } public static void main(String[] arg) { ConcreteCreatorA cc=new ConcreteCreatorA(); System.out.println(cc.Operation()); System.out.println(cc.processProductSpecial()); }} Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd
標簽:
Java
相關文章:
排行榜
