当前位置: 首页 > news >正文

java开发工资一般多少长沙百度网站推广优化

java开发工资一般多少,长沙百度网站推广优化,托管型网站,城市建设模拟游戏网站中文注解使用多个简单的对象一步一步构建成一个复杂的对象 主要解决:主要解决在软件系统中,有时候面临着"一个复杂对象"的创建工作,其通常由各个部分的子对象用一定的算法构成;由于需求的变化,这个复杂对象的各个部…

使用多个简单的对象一步一步构建成一个复杂的对象

主要解决:主要解决在软件系统中,有时候面临着"一个复杂对象"的创建工作,其通常由各个部分的子对象用一定的算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将它们组合在一起的算法却相对稳定

何时使用:一些基本部件不会变,而其组合经常变化的时候。

应用实例: 1、去肯德基,汉堡、可乐、薯条、炸鸡翅等是不变的,而其组合是经常变化的,生成出所谓的"套餐"。 2、JAVA 中的 StringBuilder。

使用场景: 1、需要生成的对象具有复杂的内部结构。 2、需要生成的对象内部属性本身相互依赖。

建造者模式在创建复杂对象时非常有用,特别是当对象的构建过程涉及多个步骤或参数时。它可以提供更好的灵活性和可维护性,同时使得代码更加清晰可读。

注意事项:与工厂模式的区别是:建造者模式更加关注与零件装配的顺序。

我们假设一个快餐店的商业案例,其中,一个典型的套餐可以是一个汉堡(Burger)和一杯冷饮(Cold drink)。汉堡(Burger)可以是素食汉堡(Veg Burger)或鸡肉汉堡(Chicken Burger),它们是包在纸盒中。冷饮(Cold drink)可以是可口可乐(coke)或百事可乐(pepsi),它们是装在瓶子中。

我们将创建一个表示食物条目(比如汉堡和冷饮)的 Item 接口和实现 Item 接口的实体类,以及一个表示食物包装的 Packing 接口和实现 Packing 接口的实体类,汉堡是包在纸盒中,冷饮是装在瓶子中。

然后我们创建一个 Meal 类,带有 Item 的 ArrayList 和一个通过结合 Item 来创建不同类型的 Meal 对象的 MealBuilderBuilderPatternDemo 类使用 MealBuilder 来创建一个 Meal

 

public interface Item {String name();Packing packing();float price();
}public interface Packing {String pack();
}public class Wrapper implements Packing{@Overridepublic String pack() {return "Wrapper";}
}public class Bottle implements Packing{@Overridepublic String pack() {return "Bottle";}
}public abstract class Burger implements Item {@Overridepublic Packing packing() {return new Wrapper();}@Overridepublic abstract float price();
}public abstract class ColdDrink implements Item {@Overridepublic Packing packing() {return new Bottle();}@Overridepublic abstract float price();
}public class VegBurger extends Burger {@Overridepublic float price() {return 25.0f;}@Overridepublic String name() {return "Veg Burger";}
}public class ChickenBurger extends Burger {@Overridepublic float price() {return 50.5f;}@Overridepublic String name() {return "Chicken Burger";}
}public class Coke extends ColdDrink {@Overridepublic float price() {return 30.0f;}@Overridepublic String name() {return "Coke";}
}public class Pepsi extends ColdDrink {@Overridepublic float price() {return 35.0f;}@Overridepublic String name() {return "Pepsi";}
}public class Meal {private List<Item> items = new ArrayList<Item>();    public void addItem(Item item){items.add(item);}public float getCost(){float cost = 0.0f;for (Item item : items) {cost += item.price();}        return cost;}public void showItems(){for (Item item : items) {System.out.print("Item : "+item.name());System.out.print(", Packing : "+item.packing().pack());System.out.println(", Price : "+item.price());}        }    
}public class MealBuilder {public Meal prepareVegMeal (){Meal meal = new Meal();meal.addItem(new VegBurger());meal.addItem(new Coke());return meal;}   public Meal prepareNonVegMeal (){Meal meal = new Meal();meal.addItem(new ChickenBurger());meal.addItem(new Pepsi());return meal;}
}public class BuilderPatternDemo {public static void main(String[] args) {MealBuilder mealBuilder = new MealBuilder();Meal vegMeal = mealBuilder.prepareVegMeal();System.out.println("Veg Meal");vegMeal.showItems();System.out.println("Total Cost: " +vegMeal.getCost());Meal nonVegMeal = mealBuilder.prepareNonVegMeal();System.out.println("Non-Veg Meal");nonVegMeal.showItems();System.out.println("Total Cost: " +nonVegMeal.getCost());}
}

http://www.khdw.cn/news/55866.html

相关文章:

  • 简单班级网站模板昆明百度关键词优化
  • 建设网站容易吗福州排名seo公司
  • wordpress 钩子新乡网站优化公司价格
  • 范例网站怎么做太原网站建设谁家好
  • 网站设计标准字体百度首页排名优化多少钱
  • 校园网站建设与应用友情链接的方式如何选择
  • 做资料分享网站百度seo优化软件
  • 推荐的网站百度推广竞价托管
  • 网站布局如何修改网络推广培训班
  • 网站开发 .net怎么去优化关键词
  • wordpress php 5.3.x重庆seo点击工具
  • 做网站的公司哪家最好淘宝关键词搜索
  • java开发 大型网站开发陕西网络推广公司
  • 新网站前期seo怎么做网络营销专业就业前景
  • 可以上传资源的网站开发费用网站搭建需要多少钱
  • 网站设计的标准希爱力的功效及副作用
  • 电子商务网站建设有什么意义手机app免费制作平台
  • 花都建网站公司seo工程师是做什么的
  • 电脑商业网站怎的做seo优化运营
  • 程序员做游戏还是做网站好郑州百度网站优化排名
  • 沼气服务网站建设管理友情链接交换形式有哪些
  • 郑州网站建设排行榜青岛网站建设微动力
  • 网站在线咨询系统百度广告管家
  • 安阳做网站的地方搜索引擎优化教程
  • 请专业公司做个网站要花多少钱2022年新闻热点摘抄
  • wordpress文字颜色怎样修改seo网络营销技巧
  • 制造网站建设哪家好手机网站制作
  • 网络优化论文灰色词优化培训
  • 长沙市seo排名点击器
  • 怎样做好竞价推广上海seo外包公司