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

音乐网站的音乐怎么做百度做任务的网站

音乐网站的音乐怎么做,百度做任务的网站,横向网站模板,宁波seo排名外包公司责任链模式可以应用于多种场景,下面是几个不同场景的例子,每个例子都包括完整的代码。 示例1:日志处理系统 在日志处理系统中,日志消息可以根据其严重性(错误、警告、信息)被不同级别的日志处理器处理。 …

责任链模式可以应用于多种场景,下面是几个不同场景的例子,每个例子都包括完整的代码。

示例1:日志处理系统

在日志处理系统中,日志消息可以根据其严重性(错误、警告、信息)被不同级别的日志处理器处理。

abstract class Logger {public static int INFO = 1;public static int DEBUG = 2;public static int ERROR = 3;protected int level;protected Logger nextLogger;public void setNextLogger(Logger nextLogger) {this.nextLogger = nextLogger;}public void logMessage(int level, String message) {if (this.level <= level) {write(message);}if (nextLogger != null) {nextLogger.logMessage(level, message);}}abstract protected void write(String message);
}class ConsoleLogger extends Logger {public ConsoleLogger(int level) {this.level = level;}@Overrideprotected void write(String message) {System.out.println("Standard Console::Logger: " + message);}
}class ErrorLogger extends Logger {public ErrorLogger(int level) {this.level = level;}@Overrideprotected void write(String message) {System.err.println("Error Console::Logger: " + message);}
}class FileLogger extends Logger {public FileLogger(int level) {this.level = level;}@Overrideprotected void write(String message) {System.out.println("File::Logger: " + message);}
}public class ChainPatternDemo {private static Logger getChainOfLoggers() {Logger errorLogger = new ErrorLogger(Logger.ERROR);Logger fileLogger = new FileLogger(Logger.DEBUG);Logger consoleLogger = new ConsoleLogger(Logger.INFO);errorLogger.setNextLogger(fileLogger);fileLogger.setNextLogger(consoleLogger);return errorLogger;}public static void main(String[] args) {Logger loggerChain = getChainOfLoggers();loggerChain.logMessage(Logger.INFO, "This is an information.");loggerChain.logMessage(Logger.DEBUG, "This is a debug level information.");loggerChain.logMessage(Logger.ERROR, "This is an error information.");}
}

示例2:支付处理系统

在一个支付处理系统中,一个支付请求可以通过多种支付方式进行处理。

abstract class PaymentHandler {protected PaymentHandler successor;public void setSuccessor(PaymentHandler successor) {this.successor = successor;}public abstract void handlePayment(PaymentRequest request);
}class PaymentRequest {private double amount;public PaymentRequest(double amount) {this.amount = amount;}public double getAmount() {return amount;}
}class PaypalHandler extends PaymentHandler {@Overridepublic void handlePayment(PaymentRequest request) {if (request.getAmount() < 1000) {System.out.println("Paypal processed $" + request.getAmount());} else if (successor != null) {successor.handlePayment(request);}}
}class CreditCardHandler extends PaymentHandler {@Overridepublic void handlePayment(PaymentRequest request) {if (request.getAmount() < 5000) {System.out.println("Credit Card processed $" + request.getAmount());} else if (successor != null) {successor.handlePayment(request);}}
}class BankTransferHandler extends PaymentHandler {@Overridepublic void handlePayment(PaymentRequest request) {System.out.println("Bank Transfer processed $" + request.getAmount());}
}public class PaymentChainDemo {public static void main(String[] args) {PaymentHandler paypal = new PaypalHandler();PaymentHandler creditCard = new CreditCardHandler();PaymentHandler bankTransfer = new BankTransferHandler();paypal.setSuccessor(creditCard);creditCard.setSuccessor(bankTransfer);PaymentRequest request = new PaymentRequest(450);paypal.handlePayment(request);request = new PaymentRequest(1200);paypal.handlePayment(request);request = new PaymentRequest(6500);paypal.handlePayment(request);}
}

责任链模式在软件设计中非常通用,并且可以在许多不同的场景中找到应用。这些示例展示了责任链模式在处理具有不同处理级别或条件的请求时的灵活性和可扩展性。在实际应用中,责任链模式可以帮助我们创建更加模块化和可管理的代码,但也需要注意不要过度使用,避免不必要的复杂性。

http://www.yayakq.cn/news/214070/

相关文章:

  • 霍邱县住房和城乡建设局网站西安优化排名推广
  • 百度站长平台怎么验证网站有实力的网站建设公司
  • 湖南网站设计企业单页网站欣赏
  • 团员建设网站设计产品
  • 龙岗网站建设报价免费企业网站注册
  • 闵行区网站制作成都的科技公司有哪些
  • 厦门+外贸公司做网站蒙icp备网站建设
  • 网站建设的用户体验外包开发app需要多少钱
  • 企业网站模板下载尽在网站开发后如何维护
  • 网站主机与服务器吗福田公司旗下子公司
  • 网站的费用可以做无形资产网站建设的解决方案
  • 潍坊市建设局网站网站建设优化哪家公司好
  • 网站标签页在哪里设置网站推广策划书
  • 石家庄微网站建设公司哪家好传播文化有限公司网站建设
  • 深圳企业网站建设服务商杭州外贸网站建设公司申跃
  • 和狗狗做电影网站wordpress 建站专家
  • 河南建筑业城乡建设网站查询中国字体设计网
  • 学校网站建设开发方案用电脑做兼职的网站比较好
  • 网站开发数据库设计dedecms建手机网站
  • 东营机关建设网站做网站是怎么收费的是按点击率
  • 网站首页新世纪建设集团有限公司阿里云服务器官网登录入口
  • 零用贷网站如何做内容营销什么意思
  • 临沂做百度网站软件公司网站制作遨游免费
  • 网站被安全狗拦截私密浏览器免费版在线看小说
  • discuz 手机网站模板wordpress v5.2.2安装
  • 合肥网站seo诊断兰州优化网站公司
  • 响应的网站杭州网站推广
  • 合肥做双语网站百度免费网站制作
  • 网站备案类型有哪些免费咨询律师事务所
  • 胶州网站建设效果常州网站建设机构