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

做毕设最常去的几个网站汉口网站制作设计

做毕设最常去的几个网站,汉口网站制作设计,天津网站建设服务电话,千万不要进住建局java 设计模式 示例策略模式是行为设计模式之一 。 当我们对一个特定的任务有多种算法并且客户决定在运行时使用的实际实现时#xff0c;将使用策略模式。 策略模式也称为策略模式 。 我们定义了多种算法#xff0c;并让客户端应用程序将算法用作参数。 此模式的最佳示例之一… java 设计模式 示例 策略模式是行为设计模式之一 。 当我们对一个特定的任务有多种算法并且客户决定在运行时使用的实际实现时将使用策略模式。 策略模式也称为策略模式 。 我们定义了多种算法并让客户端应用程序将算法用作参数。 此模式的最佳示例之一是采用Comparator参数的Collections.sort()方法。 根据Comparator接口的不同实现将以不同的方式对对象进行排序请查看此文章以使用Java Comparable和Comparator在Java中对对象进行排序。 对于我们的示例我们将尝试实现一个简单的购物车其中我们有两种付款策略-使用信用卡或使用PayPal。 首先我们将为我们的策略创建接口在本例中我们将支付作为参数传递的金额。 package com.journaldev.design.strategy;public interface PaymentStrategy {public void pay(int amount); } 现在我们将不得不创建使用信用卡/借记卡或通过Paypal付款的算法的具体实现。 package com.journaldev.design.strategy;public class CreditCardStrategy implements PaymentStrategy {private String name;private String cardNumber;private String cvv;private String dateOfExpiry;public CreditCardStrategy(String nm, String ccNum, String cvv, String expiryDate){this.namenm;this.cardNumberccNum;this.cvvcvv;this.dateOfExpiryexpiryDate;}Overridepublic void pay(int amount) {System.out.println(amount paid with credit/debit card);}}package com.journaldev.design.strategy;public class PaypalStrategy implements PaymentStrategy {private String emailId;private String password;public PaypalStrategy(String email, String pwd){this.emailIdemail;this.passwordpwd;}Overridepublic void pay(int amount) {System.out.println(amount paid using Paypal.);}} 现在我们的算法已经准备就绪我们可以实现购物车并且付款方式将需要输入作为付款策略。 package com.journaldev.design.strategy;public class Item {private String upcCode;private int price;public Item(String upc, int cost){this.upcCodeupc;this.pricecost;}public String getUpcCode() {return upcCode;}public int getPrice() {return price;}}package com.journaldev.design.strategy;import java.text.DecimalFormat; import java.util.ArrayList; import java.util.List;public class ShoppingCart {//List of itemsListItem items;public ShoppingCart(){this.itemsnew ArrayListItem();}public void addItem(Item item){this.items.add(item);}public void removeItem(Item item){this.items.remove(item);}public int calculateTotal(){int sum 0;for(Item item : items){sum item.getPrice();}return sum;}public void pay(PaymentStrategy paymentMethod){int amount calculateTotal();paymentMethod.pay(amount);} } 请注意购物车的付款方式需要付款算法作为参数而不是将其存储为实例变量。 让我们用一个简单的程序测试我们的设置。 package com.journaldev.design.strategy;public class ShoppingCartTest {public static void main(String[] args) {ShoppingCart cart new ShoppingCart();Item item1 new Item(1234,10);Item item2 new Item(5678,40);cart.addItem(item1);cart.addItem(item2);//pay by paypalcart.pay(new PaypalStrategy(myemailexample.com, mypwd));//pay by credit cardcart.pay(new CreditCardStrategy(Pankaj Kumar, 1234567890123456, 786, 12/15));}} 上面程序的输出是 50 paid using Paypal. 50 paid with credit/debit card策略模式类图 重要事项 我们本可以使用组合来创建策略的实例变量但应避免这种情况因为我们希望将特定策略应用于特定任务因此在Collections.sort和Arrays.sort方法中也遵循相同的方法将比较器用作论据。 策略模式与状态模式非常相似。 区别之一是Context包含状态作为实例变量并且可以有多个任务的执行可以依赖于状态而在策略模式中strategy作为参数传递给方法而上下文对象没有任何变量来存储它。 当我们有多个用于特定任务的算法并且希望我们的应用程序灵活地在运行时为特定任务选择任何算法时策略模式很有用。 这就是Java中的Strategy Pattern的全部内容希望您喜欢它。 参考 Java中的策略设计模式- 开发人员博客上来自我们JCG合作伙伴 Pankaj Kumar的示例教程 。 翻译自: https://www.javacodegeeks.com/2013/08/strategy-design-pattern-in-java-example-tutorial.htmljava 设计模式 示例
http://www.zqtcl.cn/news/648920/

相关文章:

  • 秀洲住房与建设局网站徐州建设工程招投标官方网站
  • 做公司网站要注意哪些问题做章的网站
  • 南京建设网站维护洛阳最新通告今天
  • 网站名称创意大全wordpress公开课插件
  • 淮安市城市建设档案馆网站可以做网页的软件
  • 网站空间服务器wordpress 排除置顶文章
  • 有域名后怎么做网站邯郸做移动网站的地方
  • 商标可以做网站吗网站开发的大学生应届简历
  • 长沙长沙网站建设公司saas系统架构
  • 成都销售型网站长春财经学院多大
  • 手机自己制作表白网站app项目网络计划图怎么画
  • 品牌网站如何做seo浏览器正能量网址
  • 开封做网站哪家好网页设计制作网站大一素材
  • 河南网站域名备案莱芜新闻电视台节目表
  • 长春网站建设新格做天猫还是做网站推广
  • 新网站建设的感想安阳区号是什么
  • 余姚市城乡建设局网站wordpress 预览插件
  • 游戏开发和网站开发wordpress foreign trade
  • 网站设计 原型图html购物网站模板
  • 谷歌网站推广报价国产搜什么关键词最好看
  • 婚礼网站有哪些个人做网站需要什么条件
  • 深圳企业网站seo人才招聘网站建设
  • 谷歌下载seo是什么软件
  • 个人网站设计分析小程序在线制作平台
  • 网站开发 一般用什么语言vi视觉设计案例
  • 微信公众平台官方网官网seo优化找哪家做
  • 简约 网站模板网站目录链接怎么做
  • 国内地铁建设公司网站大连做网站外包
  • 微网站营销是什么网站图片上传代码
  • 外包公司做网站多少用vs做的网站怎么打开